iphone - Cocoa Touch/iPhone 中的 XML 解析

标签 iphone xml cocoa-touch

好吧,我已经看过 TouchXML、parseXML、NSXMLDocument、NSXMLParser,但我真的很困惑该怎么做。

我有一个连接到服务器、请求数据并获取 XML 响应的 iPhone 应用程序。在 http://pastebin.com/f681c4b04 处给出了对不同查询集的示例 xml 响应

我有另一个类充当 Controller (就像在 MVC 中一样,执行获取数据的逻辑)。此类从 View 类获取输入并对其进行处理,例如向网络服务器发送请求,获取 xml,解析 xml,填充其变量(其单例/共享类),然后向调用者响应 true 或 false。调用者根据 Controller 类给出的响应,检查 Controller 的变量并向用户显示适当的内容。

我有以下 Controller 类变量:

@interface backendController : NSObject {
NSMutableDictionary *searchResults, *plantInfoResults, *bookmarkList, *userLoginResult;
}

以及 getBookmarkList、getPlantInfo 等函数。现在我正在通过网络服务器打印纯 XML 返回 NSLog(@"Result: :%@"[NSString stringWithContentsOfURL:url])

我想要一个通用函数,它获取从服务器返回的 XML,解析它,创建一个 NSMutableDictionary,它包含 XML 开始标记的文本表示作为键,XML 标记值作为值并返回它。

只有一个问题,怎么做?

最佳答案

您是否尝试过您提到的任何 XML 解析器?这是他们如何设置节点名称的键值:

[aBook setValue:currentElementValue forKey:elementName];

附言仔细检查您的 XML,似乎您在某些结果中缺少根节点。除非您为了简单起见而将其省略。

看看w3schools XML tutorial ,它应该为您指明 XML 语法的正确方向。

关于iphone - Cocoa Touch/iPhone 中的 XML 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/773651/

相关文章:

javascript - 在 UIWebView 中滚动网页

c# - 使用 C# .NET 处理 XML 中的禁用字符

javascript - 将动态 XML 内容检索到 Perl 中的变量中

iphone - libsystem_c.dylib strdup 中的 ios 5.1 内存泄漏

objective-c - 选择器 'datetoday' 的闰年和 No Known Class 方法

iphone - uiwebview方向字体大小问题

iphone - 需要 iOS 应用程序的基本服务器后端

java - 如何从java启动H2

iphone - cocoa Facebook 登录不工作

iphone - iPhone应用程序在iOS 4上运行正常,但在iOS 6的启动屏幕上崩溃