【问题标题】:Parsing Text Between Two Empty XML Elements in Objective C在 Objective C 中解析两个空 XML 元素之间的文本
【发布时间】:2010-08-03 12:59:46
【问题描述】:

我已经知道如何解析包含内容的 XML 元素(Objective C 中的<this> Content </this>,但我目前正在使用一个 Web 服务来返回两个封闭元素之间所需的内容(<begin-paragraph/> The content I need <end-paragraph/>)我一直在网上寻找对于其他人这样做的任何示例,但我找不到任何东西。如果有人知道如何在两个空元素之间阅读并愿意分享,我将非常感激。

【问题讨论】:

  • 如果是您自己的,请更改网络服务。但是以这种风格给你数据是没有意义的......
  • 不幸的是,这不是我的网络服务,所以我不能这样做。我正在寻找一种替代的网络服务,但如果我能找到一种方法来做到这一点,那将节省最多的时间。

标签: iphone objective-c xml parsing


【解决方案1】:

我不得不说我认为这是对 XML 的滥用。

但是我已经检查过了,遗憾的是它的格式很好,所以 NSXMLParser(我假设你正在使用它)应该能够应付它。

您基本上需要通过处理NSXMLParserDelegate 中的开始元素和结束元素事件来检查您所在的元素。然后在收到begin-paragraph–parser:didEndElement:namespaceURI:qualifiedName: 消息后,抓取您在-parser:foundCharacters: 中收到的所有文本,直到您收到–parser:didStartElement:namespaceURI:qualifiedName:attributes:end-paragraph

【讨论】:

  • 谢谢,帮了大忙
【解决方案2】:

我不知道 iPhone 上的 DOM 一致性是什么样的,但一般的过程是:

  1. 导航到 DOM 中的 <begin-paragraph />
  2. 获取该节点的下一个兄弟节点。这就是你需要的内容。 (Node::nextSibling 属性)
  3. 如果那里还有你想要的其他元素,继续用同样的方法收集它们,直到你到达<end-paragraph />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多