6

デスクトップで正常に機能する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でこの例外が発生するのはなぜですか?どうすれば修正できますか?どうも!

4

3 に答える 3

11

私の解決策は、MainActivityに次のコードを含めることでした。

System.setProperty("org.xml.sax.driver","org.xmlpull.v1.sax2.Driver");
于 2015-07-07T15:57:49.700 に答える
9

いくつかのコードをAndroidに移植しているときに、同じ問題が発生しました。自分のファクトリとパーサーを作成することはうまくいくようだとわかりました。

私はこれを置き換えてみます:

XMLReader p = XMLReaderFactory.createXMLReader();

これとともに:

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

お役に立てれば :)

于 2013-12-05T09:55:44.673 に答える
1

SAXを使用したXMLファイルの解析(Java™チュートリアル>XML処理用JavaAPI(JAXP)> XML用シンプルAPI)に従って解決しました。

于 2012-04-19T13:29:15.203 に答える