移植到Android:为什么我得到“无法创建默认的XMLReader;是系统属性org.xml.sax.driver设置?“?

我正在将一些在我的桌面上运行良好的Java代码移植到Android上.我有以下代码段:

import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.XMLReaderFactory;
// ...
XMLReader p = XMLReaderFactory.createXMLReader();

在最后一行,我得到以下异常:

Can't create default XMLReader; is system property org.xml.sax.driver set?

当我在桌面上测试代码时,它运行正常.为什么我在Android上遇到此异常,我该如何解决?谢谢!

解决方法:

我在将一些代码移植到Android时遇到了同样的问题.我发现创建自己的工厂和解析器似乎工作.

我试着替换这个:

XMLReader p = XMLReaderFactory.createXMLReader();

有了这个:

SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
SAXParser newSAXParser = saxParserFactory.newSAXParser();
XMLReader p = newSAXParser.getXMLReader();

希望这可以帮助 :)

上一篇:Python .xlsx(Office OpenXML)阅读器和csv模块一样简单吗?


下一篇:php – 从XMLReader打开的simplexml中的CData