Das Problem wird so verursacht:
Lößt "org.xml.sax.SAXParseException: The reference to entity "id" must end with the ';'" aus, da das '&' ein ";" als ende braucht.
Lösung: ersetze "&" mit "&" und alles funktioniert wieder
Nun aber mein Problem:
Die xml datei ist SEHR groß. Ich will sie nicht im Speicher ablegen, wo ich die '&'s ersetzen könnte.
Sonder nich schiebe den inputstream direkt in den parser (muss auch, weil speicher sonst schnell voll)
Jetzt die Frage:
Wie ersetze ich einzelne characters in einem stream ohne ihn im speicher abzulegen?
HTML:
<a href="whatever.php?i=1&id=2">Link</a>
Lösung: ersetze "&" mit "&" und alles funktioniert wieder
Nun aber mein Problem:
Die xml datei ist SEHR groß. Ich will sie nicht im Speicher ablegen, wo ich die '&'s ersetzen könnte.
Sonder nich schiebe den inputstream direkt in den parser (muss auch, weil speicher sonst schnell voll)
Java:
HttpResponse response = client.execute(post);
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setValidating(false);
factory.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
factory.setSchema(null);
SAXParser saxParser = factory.newSAXParser();
saxParser.parse(response.getEntity().getContent(), new Handler());
Jetzt die Frage:
Wie ersetze ich einzelne characters in einem stream ohne ihn im speicher abzulegen?
Zuletzt bearbeitet: