0

ローカル XML ファイルを配置し、オブジェクトres/rawにロードしInputStreamerます。正常に動作し、そのコンテンツを解析できます。

同じ XML を に配置するとres/xmlXmlPullParserExceptionSTART タグが見つからないというメッセージが表示されます。

このコードを使用してオブジェクトを埋めInputStreamます:

 InputStream is = getResources().openRawResource(R.raw.data);

そして、次の行から XML をロードします/res/xml

InputStream is = context.getResources().openRawResource(R.xml.data); 

なぜこうなった?2番目のアプローチが間違っている場合、の目的はres/xml何ですか?

4

2 に答える 2

0

getXML()を返さInputStreamないので、コードがどのようにコンパイルされるかわかりません。を返しますXMLResourceParser

http://developer.android.com/reference/android/content/res/Resources.html#getXml(int)

指定されたリソース ID の汎用 XML リソースを読み取ることができる XmlResourceParser を返します。

の目的は、/res/xmlXML を保存して後で解析するのに便利な場所にすることです! InputStream:)が必要ない場合もあります。

于 2013-07-08T17:21:30.337 に答える