0

我的应用程序 documentBuilder.parse(inputStream) 在 Android 4.0.3 中引发以下错误。

"SAXException : Unexpected token (position:TEXT ?xml version='1....@1:38 in java.io.InputStreamReader@419ae708)"

相同的代码适用于所有旧版本的 android。

以下是我的输入流的初始部分。

?xml version='1.0' encoding='UTF-8'?> 

有什么解决办法吗?

4

2 回答 2

3

缺少最初的小于号。显然旧版本的 android 允许这种不正确的 XML。

于 2012-06-21T11:41:15.113 回答
0

我认为您需要 documentBuilder 的 inputSource:

Document doc = null;
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

DocumentBuilder db = dbf.newDocumentBuilder();

InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xml)); //where xml is you xml file
doc = db.parse(is);

希望这可以帮助。

于 2012-06-20T11:20:47.627 回答