我正在使用Google Gson库来处理JSON字符串。我需要将这些字符串保存在文件中(保存/加载操作)。
特别是当我有一个类MyClass
时,它包含一组参数(整数,字符串,基元类型数组等),例如
public class MyClass{
int val;
int[]vals;
String text;
public MyClass(){}
}
我可以在JSON字符串中转换MyClass
对象,如下所示:
MyClass obj = new MyClass();
//obj->set...
Gson gson = new Gson();
String json = gson.toJson(obj);
现在!我应该像往常一样创建String json
并将其保存在文件中,还是应该使用JsonWriter
类?
答案 0 :(得分:4)
你可以做到这两点。
然而,使用JsonWriter
将提供更好的性能:输出可以流式传输到文件中,而不是在将整个输出写入文件之前将其映射到内存中。
使用BufferedWriter
:
BufferedWriter bw = new BufferedWriter(new FileWriter(outputFile));
Gson gson = new Gson();
gson.toJson(obj, new JsonWriter(bw)); // Write to file using BufferedWriter