1

我正在使用 TBXML 解析器版本。1.4、当我通过TBXML解析器解析这种后续响应时,得到EXC_BAD_ACCESS...

<trainingOrganization xsi:type="xsd:string">~!@#$%^&*()_+?> <,./;'{}|<":;'></trainingOrganization>

卡在这个问题上。

正如我观察到的,TBXML 无法解析 <> 数据...

提前致谢。

4

2 回答 2

1

使用 CDATA 的最佳方法之一,CDATA 中的任何内容都视为 xml 文档,因此如果您有特殊字符,例如 ';:,.''<>',那么解析器将忽略它。所以我总是更喜欢使用 CDATA 并建议你应该使用它。

于 2013-04-08T13:40:02.327 回答
0

我认为这与 TBXML 解析器无关。

像这样的字符<>\"'必须被屏蔽(通过 a \),所以它可能只是您的 xml 文件的编码或其解析的设置。

否则解析器认为它是:

<trainingOrganization xsi:type="xsd:string">
~!@#$%^&*()_+?
> *<-- closing the previous element* 
<,./;'{}|
  <":;'>
</trainingOrganization>

如果您找不到任何设置或编码来自动执行此操作,请尝试\在解析之前将字符替换为前面的字符。

另一种可能性是正确使用 xml 并且不允许<>在元素之间设置结构,这是我认为的最简单的方法。

于 2013-04-04T13:15:49.447 回答