【发布时间】:2012-03-27 13:19:29
【问题描述】:
我使用this 示例制作了一个xml 解析器(清单6. SAX 处理程序)。我必须解析来自服务器的文件。从服务器接收到的文件具有“ISO-8859-1”编码。
问题是从服务器接收到的文件有一些特殊字符,如&、"、'等。我知道服务器应该发送&而不是&,但服务器只会发送&,它不能替换&到@ 987654325@ 由于其他一些问题。我也做了 inputSource.setEncoding("ISO-8859-1")。我想解析这个文件,但是解析器无法解析这些特殊字符。我该怎么办?任何帮助....
我还有一个疑问是“ISO-8859-1 的字符集有这些特殊字符,那么为什么解析器不能解析这些特殊字符?”
【问题讨论】:
-
我有如下错误:org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: not well-formed (invalid token)
-
XML 文件的第一行是什么? "" ?
-
试一试:手动将 InputSource 设置为 ISO,例如 inputSource.setEncoding("ISO-8859-1"),然后将其传递给 SAX 解析器的 parse()
-
我已经将编码设置为 ISO-8859-1,并且我也在我的问题中写了这个。
-
哦,对了。另一种尝试:针对另一个验证器(例如w3schools.com/xml/xml_validator.asp)测试您的 XML。如果没有发生错误,请提供您的代码(SAX 解析器的初始化......而不是处理程序)和 XML 的第一行,以便有人可以重现错误
标签: android character-encoding xml-parsing special-characters saxparser