iPhone HTTP获得XML并使用GDataXML解析
来源:互联网 发布:pdf扫描软件免费下载 编辑:程序博客网 时间:2024/09/21 09:17
NSURL *url = [NSURL URLWithString:
@"http://www.raywenderlich.com/downloads/Party.xml"];
NSMutableURLRequest* request = [NSMutableURLRequest new];
[request setURL:url];
[request setHTTPMethod:@"GET"];
NSHTTPURLResponse* response;
NSData* data = [NSURLConnection sendSynchronousRequest:request
returningResponse:&response
error:nil];
NSString* responseXMLResult = [[NSString alloc] initWithData:data
encoding: CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)];
NSError *error;
GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithXMLString: responseXMLResult
options:0 error:&error];
if (doc == nil) { return; }
NSLog(@"LOG=%@", [[NSString alloc] initWithData:doc.XMLData encoding:NSUTF8StringEncoding]);
//NSLog(@"%@", doc.rootElement.XMLString);
NSMutableString *resultString = [[NSMutableString alloc] initWithString:@"XML数据内容: \n"];
//NSArray *partyMembers = [doc.rootElement elementsForName:@"Player"];
NSArray *partyMembers = [doc.rootElement nodesForXPath:@"//Party/Player" error:nil];
for (GDataXMLElement *partyMember in partyMembers) {
NSString *_name;
NSString *_level;
NSString *_class;
// Name
//NSArray *names = [partyMember elementsForName:@"Name"];
NSArray *names = [partyMember nodesForXPath:@"Name" error:nil];
if (names.count > 0) {
GDataXMLElement *firstName = (GDataXMLElement *) [names objectAtIndex:0];
_name = firstName.XMLString;
} else continue;
// Level
NSArray *levels = [partyMember elementsForName:@"Level"];
if (levels.count > 0) {
GDataXMLElement *firstLevel = (GDataXMLElement *) [levels objectAtIndex:0];
_level = firstLevel.stringValue;
} else continue;
// Class
NSArray *classes = [partyMember elementsForName:@"Class"];
if (classes.count > 0) {
GDataXMLElement *firstClass = (GDataXMLElement *) [classes objectAtIndex:0];
_class = firstClass.stringValue;
} else continue;
[resultString appendFormat:@"Name=%@",_name ];
[resultString appendFormat:@" Level=%@",_level ];
[resultString appendFormat:@" Class=%@\n",_class ];
}
//textView.text = [[NSString alloc] initWithData:doc.XMLData encoding:NSUTF8StringEncoding];
textView.text = resultString;
[url release];
[doc release];
- iPhone HTTP获得XML并使用GDataXML解析
- iPhone HTTP获得XML并使用GDataXML解析
- iPhone HTTP获得XML并使用GDataXML解析
- iPhone HTTP获得XML并使用GDataXML解析
- Iphone 使用 GDataXml 解析通过HTTP获取的XML文件
- iOS 获取xml文档并解析(使用GDataXML)
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 使用GDataXML解析XML文档
- 利用GDataXml解析xml
- GDataXML解析XML
- GDataXML解析XML文档
- GDataXML解析XML
- word vba 参考教程
- Ubuntu 10.04 下android 源码下载与编译
- Poj 2528 Mayor's posters
- QML 与 C++ 混合编程(2)
- 12-1-19进步一小点
- iPhone HTTP获得XML并使用GDataXML解析
- 分享iphone开发的好网站,希望大家也能提供一些分享下 收藏
- POJ 2942 Knights of the Round Table 点重连通分量+交叉染色判奇圈
- 在fedora下安装tftp服务器
- prism4学习笔记6:prism、Mef和Unity、MVVM的关系
- 令mysql数据库主键自增
- python的几个小实现
- Design By Contract 基于契约设计的个人理解
- C/S架构网络通信开发