Tôi gặp khó khăn khi viết chuỗi json khá in trên tệp bằng thư viện Gson. Mã tôi đang sử dụng ở đây:Viết đầu ra json khá in vào luồng tệp tin với GSON JsonWriter
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();
}
}
Dòng này không là gì ngoài luồng đầu ra của tệp. Mặc dù tôi đã bật tính năng in đẹp nhưng tôi vẫn nhận được chuỗi json chưa được định dạng trong tệp.
Mọi trợ giúp đều được đánh giá cao.
Sử dụng JSONWriter ist dự phòng - đó là những gì GSON dành cho. Bạn đã thử làm 'gs.toJSON (nguồn cấp dữ liệu, outputStreamWriter)'? –
Rất cám ơn Adrian, nó đã hoạt động! – BigD