求解用kissxml怎么解析xml数据
本人已经收到xml包,并转换好了,xml现在是下面的文本。
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Body><ns1:getPartListResponse xmlns:ns1="http://services.fgseh.com">
<ns1:out><RS><c>1</c><D>
<P>
<pn>实话实说</pn>
<id>01001001</id>
<ds>关注人性、关注社会民生。</ds>
<tn>361963</tn>
<rn>2375164</rn>
<sn>133680293</sn>
</P>
<P>
<pn>疯狂贴图</pn>
。。。。。。
</P></D></RS></ns1:out></ns1:getPartListResponse></soap:Body></soap:Envelope>
我想把每个p标签里面的数据,都放到一个字典类型里面。然后把字典类型的实例都放到一个数组中去,我用的是kissxml。下面贴语句。
-(void)kissXMLForString1:(NSString *)xmlString
{
DDXMLDocument *xmlDoc = [[DDXMLDocument alloc]initWithXMLString:xmlString options:0 error:nil];
NSArray *items = nil;//临时存放数据
NSDictionary *Dict = nil;
items = [xmlDoc nodesForXPath:KP error:nil];
NSLog(@"%@",KP);
NSLog(@"%@",items);
for (DDXMLElement *item in items) {
Dict = [item attributesAsDictionary];
NSLog(@"%@",Dict);
[Allarray addObject:Dict];
//NSString *sss = [[item attributeForName:@"pn"] stringValue];
//NSLog(@"%@",sss);
}
}
语句很简单,可是items里面却没有数据,求各位大侠帮帮忙,我怎么才能解析到数据,并放到allarray里面!!!
多谢!
[解决办法]
kissxml。。没用过啊。。都是用这个吧。。
public List<UserManager> toParserUserXml(InputStream is) {
String xml = inputToString(is);
SAXParserFactory saxPraseFactory = SAXParserFactory.newInstance();
infos = new ArrayList<UserManager>();
try {
XMLReader xmlReader = saxPraseFactory.newSAXParser().getXMLReader();
UserNumContentHandler userContentHandler = new UserNumContentHandler(
infos);
xmlReader.setContentHandler(userContentHandler);
xmlReader.parse(new InputSource(new StringReader(xml)));
//for (Iterator iterator = infos.iterator(); iterator.hasNext();) {
//UserManager um = (UserManager) iterator.next();
//result[index++] = um.getName();
//}
} catch (Exception e) {
e.printStackTrace();
}
[解决办法]
TouchXML 我用的是这个,网上介绍的也很多,楼主试试这个吧