我的问题是我必须解析像{/ p>这样的HTML
数据
84 101 <br>some text<br><table border='1'>Here comes a table definition</table>
并在以下内容中引发XmlPullParserException
:
while (eventType != XmlPullParser.END_DOCUMENT) {
if (eventType == XmlPullParser.START_TAG) {
// do something
} else if (eventType == XmlPullParser.END_TAG) {
// do something else
}
eventType = xpp.next(); // the XmlPullParserException is thrown here, on method next()
}
非常有趣和奇怪的部分是:只在Nexus S(操作系统版本4.0.4)上抛出异常,在操作系统版本较低的设备上,此方法效果很好。< / p>
错误消息如下:
org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT 84 101 @1:8 in java.io.StringReader@414e3248)
任何人都可以解释一下为什么这只发生在ICS上? 感谢。
答案 0 :(得分:0)
1)字符编码:您使用的是与Nexus S不同的编码吗?您的文件是用ANSI还是utf解码的?将其与您的Nexus S编码进行比较。
2)Charset:你在XML文件中使用不同的字符集吗?例如,您使用的是中文字吗? Nexus S的默认值是什么?
这是前两个要检查的事项。
答案 1 :(得分:0)
将CDATA用作html标签
Everything inside a CDATA section is ignored by the parser.
A CDATA section starts with "<![CDATA[" and ends with "]]>"