我使用TBXML
时遇到了一个很大的问题。TBXML解析textForElement时出现的问题
当我使用:
+ (NSString*) textForElement:(TBXMLElement*)aXMLElement {
if (nil == aXMLElement->text) return @"";
return [NSString stringWithCString:&aXMLElement->text[0] encoding:NSUTF8StringEncoding];
}
解析这个XML
[...]
<step id=123>this string is not parsed
<draw_at x="1964"/>
<partials>
<partial sd="23">
<line>ANOTHER TEXT 1</line>
<line>ANOTHER TEXT 2</line>
</partial>
</partials>
</step>
[...]
我得到一个EMPTY字符串。
我想这是因为STEP标签有一个以上的文字,
事实上,如果我用同样的功能来获得 又迈进了一步不谐音标签, 字符串是正确的,不空!
我得到的步骤以这样的方式
NSstring *_step = [TBXML textForElement:step];
任何想法来解决这个问题?
谢谢。
编辑:这个XML是有效的。它被使用了多年。只是从mooore的原始复制部分粘贴到这里。
编辑2:我手写这段代码,可能省略引号或别的东西,但xml是有效的。
在有效的XML中,必须引用每个属性值。 – 2011-06-08 08:55:00
@Bavarious我的问题是文本解析,而不是XML的有效性。从服务器出来时这是有效的! – elp 2011-06-08 09:21:02
它的解析器问题..他们没有处理它我相信。它最好你把这个字符串放在一个更多的标记。或UL必须通过他们的逻辑。 – Priyanka 2011-06-08 10:31:18