私はプログラミングに慣れていないので、以下のパラグラフで間違っている場合はまず修正してください。
Android で使用する主な xml パーサーは、Sax、Dom、および XmlPullParser の 3 つです。その最後のオプションは、外部リソースとして存在します。Androidの「コア」であるため、より高速に動作しますが、機能は制限されています
OK、これが私の質問です。以下のリンクで提供されているコードをわずかに変更しました
http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html
私は次のことをしました:
import java.io.IOException;
import java.io.StringReader;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
public class xmlPParser
{
public String texte;
public xmlPParser (String arg)
throws XmlPullParserException, IOException
{
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
xpp.setInput( new StringReader ( arg ) );
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT)
{
//if(eventType == XmlPullParser.START_DOCUMENT) { System.out.println("Start document");}
// else if(eventType == XmlPullParser.START_TAG) { System.out.println("Start tag "+xpp.getName()); }
//else if(eventType == XmlPullParser.END_TAG) { System.out.println("End tag "+xpp.getName()); }
if(eventType == XmlPullParser.TEXT){ texte = xpp.getText(); } //{ System.out.println("Text "+xpp.getText());}
eventType = xpp.next();
}
//System.out.println("End document");
}
public String getTexte()
{
String returnTexte = texte;
return returnTexte;
}
}
別の Java ファイルでは、次の方法でパーサーを呼び出すことができます。
public xmlPParser myxpp;
...
myxpp = new xmlPParser("<foo>Hi five !!</foo>");
その最後の行で: 文字列を渡す代わりに、パーサーにファイルに移動するように依頼できるようにしたいと考えています。どうすればいいですか?この投稿を利用する方法がわかりません getResources().getXml() は、現在使用しているかどうかわからない Android pullParser を使用していると想定していますか?