首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Iphone >

求解用kissxml如何解析xml数据

2012-01-21 
求解用kissxml怎么解析xml数据本人已经收到xml包,并转换好了,xml现在是下面的文本。soap:Envelope xmlns:s

求解用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 我用的是这个,网上介绍的也很多,楼主试试这个吧

热点排行