Android: Lesen von XML aus lokaler Ressource (zum Testen)

8

Ich schreibe eine App, die XML von einem Webservice liest (wahrscheinlich über kSOAP2). Ich bin ziemlich zufrieden mit dem SAX-Parsing, da ich XML-Parsing für iPhone-Apps durchgeführt habe.

Leider ist der Webservice noch nicht öffentlich, daher habe ich für erste Tests einige Dateien, die das XML enthalten, das ich analysieren muss. In dieser frühen Entwicklungsphase muss ich nur das XML aus den Dateien lesen und es in den XML-Parser

übergeben %Vor%

Wie lese ich den XML-Code aus einer Datei / Ressource in eine Zeichenfolge, die an diese Methode übergeben werden soll. Ich möchte den Parser knacken und testen, aber dieser einfache Schritt hält mich auf.

Danke

    
MartinS 24.02.2011, 23:13
quelle

3 Antworten

12

Erstellen Sie einen rohen Ordner unter res

Geben Sie Ihre XML-Datei dort ein, z. testXML.xml:

/res/raw/testXML.xml

Sie sollten Ihren XML-Parser mit diesem als Eingabestream verwenden können:

%Vor%

Probieren Sie das aus.

    
Kevin 25.02.2011, 00:01
quelle
2

Ich habe eine Lösung gefunden. Verwenden von Assets. Hier ist das einfache Codebeispiel, wie ich es gemacht habe. Ich weiß, ich hätte XmlPullParser verwenden können, um einfach eine XML-Datei aus Res zu laden, aber ich wollte SAX-Parsing verwenden. Dadurch kann ich einfach eine XML-Zeichenfolge zum Testen in den SAX-Parser schreiben, bevor ich den Web-Service anschließe.

Es verwendet nur eine einfache Ansicht mit einer Schaltfläche, um die Datei zu starten und eine TextView, um die XML für jetzt anzuzeigen. Ich kann mit meinem Parser weitermachen:)

%Vor%     
MartinS 25.02.2011 19:42
quelle
0
  

Löst eine Exception aufgrund von falsch gebildetem XML (line1, Pos0) aus.

Sie teilen Parser mit, dass die Kodierung UTF-8 ist und wenn nicht, können Sie verschiedene Fehler bekommen (abhängig von Parsern). Wenn Sie Ihren XML-Code mit einem Nicht-XML-Editor bearbeiten, kann die Datei in einer anderen Codierung gespeichert werden, unabhängig davon, wie Sie sie im XML-Dokument deklariert haben.

    
Jacek Radajewski 05.02.2013 13:14
quelle

Tags und Links