im очень запутался в XML-анализе на Android. Я попытался разобрать эту XML-ссылку/файл: [http://93.186.202.34/vertretungsplan.php?api=10d]. Я пробовал разные учебные пособия и примеры, но пример xml структурирован по-разному, и я очень смущен этим. Я просто хочу отображать данные в текстовом виде или что-то без дополнительных окон элементов. Может кто-нибудь дать мне представление, как решить этот или, может быть, небольшой пример с моей ссылкой? Это было бы очень приятно. : D(HELP) Анализ данных XML на Android
0
A
ответ
0
Здесь вы идете ...
public class Vertretungsplan {
public Datum datum;
public List<Eintrag> eintragList;
}
public class Datum {
public String stand;
public String fuer;
public String woche;
}
public class Eintrag {
public String klassen;
public String block;
public String vertreter;
public String fach;
public String raum;
public String fach_orig;
public String lehrer_orig;
public String selbststaendiges_arbeiten;
public String entfall;
public String text;
}
public class SaxHandler extends DefaultHandler {
private Vertretungsplan vertretungsplan;
private List<Eintrag> eintragList;
private Eintrag tempEintrag;
private Datum datum;
private String tempVal;
public SaxHandler() {
vertretungsplan = new Vertretungsplan();
}
public Vertretungsplan getVertretungsplan() {
return vertretungsplan;
}
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
tempVal = "";
if (qName.equalsIgnoreCase("datum")) {
datum = new Datum();
}
if (qName.equalsIgnoreCase("eintraege")) {
eintragList = new ArrayList<Eintrag>();
}
if (qName.equalsIgnoreCase("eintrag")) {
tempEintrag = new Eintrag();
}
}
public void characters(char[] ch, int start, int length) throws SAXException {
tempVal = new String(ch, start, length);
}
public void endElement(String uri, String localName, String qName) throws SAXException {
if (qName.equalsIgnoreCase("datum")) {
vertretungsplan.datum = datum;
} else if (qName.equalsIgnoreCase("stand")) {
datum.stand = tempVal;
} else if (qName.equalsIgnoreCase("fuer")) {
datum.fuer = tempVal;
} else if (qName.equalsIgnoreCase("woche")) {
datum.woche = tempVal;
}
if (qName.equalsIgnoreCase("eintrag")) {
eintragList.add(tempEintrag);
} else if (qName.equalsIgnoreCase("klassen")) {
tempEintrag.klassen = tempVal;
} else if (qName.equalsIgnoreCase("block")) {
tempEintrag.block = tempVal;
} else if (qName.equalsIgnoreCase("vertreter")) {
tempEintrag.vertreter = tempVal;
} else if (qName.equalsIgnoreCase("fach")) {
tempEintrag.fach = tempVal;
} else if (qName.equalsIgnoreCase("raum")) {
tempEintrag.raum = tempVal;
} else if (qName.equalsIgnoreCase("fach-orig")) {
tempEintrag.fach_orig = tempVal;
} else if (qName.equalsIgnoreCase("lehrer-orig")) {
tempEintrag.lehrer_orig = tempVal;
} else if (qName.equalsIgnoreCase("selbststaendiges-arbeiten")) {
tempEintrag.selbststaendiges_arbeiten = tempVal;
} else if (qName.equalsIgnoreCase("entfall")) {
tempEintrag.entfall = tempVal;
} else if (qName.equalsIgnoreCase("text")) {
tempEintrag.text = tempVal;
}
if (qName.equalsIgnoreCase("eintraege")) {
vertretungsplan.eintragList = eintragList;
}
}
}
public class SaxParser {
public static Vertretungsplan parse(InputStream is) {
Vertretungsplan vertretungsplan = null;
try {
XMLReader xmlReader = SAXParserFactory.newInstance().newSAXParser().getXMLReader();
SaxHandler saxHandler = new SaxHandler();
xmlReader.setContentHandler(saxHandler);
xmlReader.parse(new InputSource(is));
vertretungsplan = saxHandler.getVertretungsplan();
} catch (Exception ex) {
Log.d("XML", "SAXXMLParser: parse() failed");
}
return vertretungsplan;
}
}
И от вашего звонка деятельности: (Ниже всего лишь пример от получения XML из папки активов вы можете использовать свой предпочтительный способ получения входного потока и разобрать его).
Vertretungsplan vertretungsplan = SaxParser.parse(getAssets().open("test.xml"));
Сообщите мне, если у вас есть какие-либо сомнения.
Смежные вопросы
- 1. Анализ данных XML на Android
- 2. Анализ данных xml на Android
- 3. Анализ данных Android Xml
- 4. Анализ XML-данных в Android-список ListFragment
- 5. XML-анализ в android
- 6. ANDROID: Анализ XML
- 7. php - xml анализ данных
- 8. Android: Арабский анализ XML?
- 9. Android xml синтаксический анализ
- 10. XML-анализ в Android
- 11. WP7 - Анализ данных XML
- 12. Анализ xml данных
- 13. Анализ индексированных XML в Android
- 14. Анализ XML-данных Дубликат Atrributes
- 15. XML-анализ из Интернета на Android
- 16. Анализ XML-файла на Android Замедляет процесс
- 17. Анализ XML на базе Android AsyncTask
- 18. Анализ XML с сайта на Android-устройство
- 19. Анализ данных JSON Android
- 20. Анализ данных XML на переменную PHP
- 21. Анализ XML-данных Weatherbug на C#
- 22. XML-анализ синтаксиса в android
- 23. Xml синтаксический анализ в android
- 24. Android-анализ XML из Интернета
- 25. Анализ XML в Android от xml
- 26. Анализ данных XML для JSON
- 27. XML-анализ в Android [Java]
- 28. xml синтаксический анализ в android
- 29. Анализ XML DOM в Android
- 30. Анализ XML-файла в Android