Es ist ein viel diskutiertes Problem wo es schon unheimlich viele Beiträge für gibt. Aber beim besten Willen komme ich nicht darauf wo mein Fehler liegt.
Ich habe eine XML-Datei auf einem Webserver, welche mit PHP erzeugt wird.
Diese kann auch hier angesehen werden: Mittelalter-Zeitreise.de
Im PHP-Script wird der Herader entsprechend für XML vorbereitet:
header("Content-type: text/xml"); // Übermittelt den Content-Type
header("Content-Disposition: attachment; filename=termine.xml"); // Übermittelt, was heruntergeladen werden soll
Die XML-Datei selber wird mit UTF 8 deklariert
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
Ich wandel dann im PHP-Script alle Sonderzeichen wie ä ö ü usw. in ein UTF8 fähiges Format um:
"ä"=>"ä"
"ö"=>"ö"
"ü"=>"ü"
Im Quellcode von Java lade ich mir dann die XML-Datei und möchte diese dann in einem TextView anzeigen......
Habe den Quellcode mal ein wenig zusammengekürzt
// Die TextView wo der Text rein soll
bezeichnung=(TextView)findViewById(R.id.textViewVeranstaltung);
// Die XML-Datei laden
Document doc;
URL url = new URL("http://www.mittelalter-zeitreise.de/android/termindetails.php?id=567");
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder docb = dbf.newDocumentBuilder();
InputSource is = new InputSource(url.openStream());
is.setEncoding("ISO-8859-1");
doc = docb.parse(is);
doc.getDocumentElement();
// Den Node aus der Datei holen
NodeList nodeListName = doc.getElementsByTagName("name");
// Den Inhalt des Node ins TextView packen
bezeichnung.setText(nodeListName.item(0).getFirstChild().getNodeValue());
Alles anzeigen
Jetzt besteht aber das Problem das dieser String, wenn er Sonderzeichen enthält, ab dieser Stelle abgeschnitten wird (aufhört). Alle nachfolgenden Zeichen werden einfach verschluckt bzw. nicht mehr dargestellt.
Ich komm aber ned drauf was ich da falsch mache. Die XML-Datei wird auch im Browser oder XML-Editor perfekt angezeigt und die Formatierung ist auch so wie sie eigentlich sein sollte.......
Ich hoffe es kann mir jemand auf die Sprünge helfen. An dem Problem knabber ich schon seit Wochen und jedes mal wenn ich mich wieder dran setze komme ich zum gleichen Ergebnis. Eigentlich müsste es funktionieren, oder?!?