Ich habe es schwer zu schreiben ziemlich print JSON Zeichenfolge in Datei mit Gson-Bibliothek. Code, den ich verwende, ist hier:Pretty print JSON-Ausgabe in FileOutput Stream mit GSON JsonWriter schreiben
Gson gs = new GsonBuilder().setPrettyPrinting().disableHtmlEscaping().create();
JsonWriter jsonWriter = null;
try {
jsonWriter = new JsonWriter(new OutputStreamWriter(stream, "UTF-8"));
jsonWriter.beginArray();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
for (Feed feed : feeds) {
gs.toJson(feed, Feed.class, jsonWriter);
}
try {
jsonWriter.endArray();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
jsonWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
Hier Stream ist nichts anderes als eine Datei Ausgabestrom. Obwohl ich den hübschen Druck aktiviert habe, bekomme ich noch unformatierte JSON-Zeichenketten in der Datei.
Jede Hilfe wird geschätzt.
Die Verwendung eines JSONWriter ist redundant - dafür ist GSON zuständig. Hast du versucht 'gs.toJSON (feeds, outputStreamWriter)' '? –
Vielen Dank Adrian, es hat funktioniert! – BigD