1

デフォルトの Android パーサーと一致するように、SAX パーサーの機能/プロパティを構成する方法はありますか?

Atom フィード用の SAX パーサーを実装しましたが、InstrumentationTestCase を介して実行せずに単体テストできるようにしたいと考えています。すぐにわかる違いは、startElement() では、Android で実行する場合は localName に要素名が含まれますが、Sun JVM で実行する場合は「name」メソッド パラメータが入力されることです。さらに、Sun JVM で実行する場合、空白は無視されますが、Android では無視されます。

4

2 に答える 2

2

探している人にとっては、いくつかの試行錯誤の結果、これら2つの機能が最も類似しているように見えました。結局、XML解析の違いにより、これらのタイプの単体テストをインストルメンテーションテストとして実行することになりました。

XMLReader reader = SAXParserFactory.newInstance().newSAXParser().getXMLReader();
reader.setFeature("http://xml.org/sax/features/namespaces", false);
reader.setFeature("http://xml.org/sax/features/namespace-prefixes", false);
reader.setContentHandler(handler);
reader.parse(source);
于 2011-05-02T21:06:12.170 に答える
-1

おそらく、パーサーを名前空間に対応するように構成し、「http://apache.org/xml/features/dom/include-ignorable-whitespace」機能を true に設定する必要があります。

于 2011-03-30T02:21:03.407 に答える