📄 testxppes.c
字号:
#include "XmlPullParserES.h"
#include <stdio.h>
char xml[] =" <env:Envelope xmlns:env=\"http://www.w3.org/2001/12/soap-envelope\" >\n <env:Body xmlns:services=\"some URI\">\n <sumResponse year=\"2006\"> 179 </sumResponse> \n <huang old=\"24\" year=\"1982\"> lijun </huang> \n </env:Body > \n</env:Envelope >\n ";
//char xml[] =" <envt:Envelope xmlns:envt=\"http://www.ujs.edu.cn\" >\n <envt:Body xmlns:services=\"some URI\">\n <sumResponse year=\"2006\"> 17922 </sumResponse> \n </envt:Body> \n</envt:Envelope>\n ";
void processStartElement()
{ int i;
int attributelen=0;
char *s,*q ;
attributelen=getAttributeCount();
s=getNamespace() ;
printf("NameSpace:%s\n",s );
s=getName() ;
printf("Name:%s\n",s );
printf("Start tag: {%s}%s\n", getNamespace(), getName());
if(attributelen)
for (i=0;i<attributelen;i++){
s=getAttributeName(i);
q=getAttributeValue(i);
printf("Attribute: %s=%s\n",s,q);
}
}
void processEndElement ()
{
printf("end tag: {%s}%s\n", getNamespace(), getName());
// elRawName2[level+1]=NULL;
}
void processText()
{
printf("Text %s\n", getText());
}
void processDocument()
{
enum EventTypes event;
event= getEventType();
while (event!= END_DOCUMENT) {
if(event== START_DOCUMENT) {
printf("Start parsing\n");
} else if(event == START_TAG) {
processStartElement();
} else if(event == END_TAG) {
processEndElement();
} else if(event == TEXT) {
processText();
}
event = next();
}
if(event ==END_DOCUMENT) {
printf("End parsing\n");
}
}
//char xml[] = "<env:Envelope xmlns:env=\"http://www.w3.org/2001/12/soap-envelope\" >\n <env:Header>\n</env:Header>\n <env:Body xmlns:services=\"some URI\">\n <services:sum>\n <x> 96 </x>\n <y> 83 </y> \n <explanation> This is an RPC example. \n</explanation> \n</services:sum> \n</env:Body > \n</env:Envelope >\n";
int main()
{
initialParser();
// setFeature(FEATURE_PROCESS_NAMESPACES, true);
setInput (xml);
// printf("stream is :%s",xml);
processDocument();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -