我们如何使用Java中的Gson流API读写文件?
我们可以使用Gson流API 读写文件,该文件基于顺序读写标准。该JsonWriter 和JsonReader 是流的写入和读入内置的核心类流API。 JsonWriter 写入JSON编码值到一个流,一次一个令牌。该流包含文字值(字符串,数字,布尔值和null)以及对象和数组的开始 和结束 定界符 ,并且JsonReader 读取JSON编码的值作为令牌流。此流包含两个文字 值 (string,数字,布尔值和null)以及对象和数组的开始 和结束定界符。令牌被遍历在深度优先奥德R,以相同的顺序它们出现的JSON文档英寸
使用JsonWriter写入文件
示例
import java.io.*;import com.google.gson.stream.*;
public class JsonWriterTest {
public static void main(String args[]) {
JsonWriter writer;
try {
writer = new JsonWriter(new FileWriter("input.json"));
writer.beginObject();
writer.name("name").value("Adithya");
writer.name("age").value(25);
writer.name("technologies");
writer.beginArray();
writer.value("Java");
writer.value("Scala");
writer.value("Python");
writer.endArray();
writer.endObject();
writer.close();
System.out.println("Data write to a file successfully");
} catch(Exception e) {
e.printStackTrace();
}
}
}
输出结果
Data write to a file successfully
使用JsonReader读取文件
示例
import java.io.*;import com.google.gson.stream.*;
public class JsonReaderTest {
public static void main(String args[]) {
JsonReader reader;
try {
reader = new JsonReader(new FileReader("input.json"));
reader.beginObject();
while(reader.hasNext()) {
String name = reader.nextName();
if(name.equals("name")) {
System.out.println(reader.nextString());
} else if(name.equals("age")) {
System.out.println(reader.nextInt());
} else if(name.equals("technologies")) {
reader.beginArray();
while(reader.hasNext()) {
System.out.println(reader.nextString());
}
reader.endArray();
} else {
reader.skipValue();
}
}
reader.endObject();
reader.close();
} catch(Exception e) {
e.printStackTrace();
}
}
}
输出结果
Adithya25
Java
Scala
Python
以上是 我们如何使用Java中的Gson流API读写文件? 的全部内容, 来源链接: utcz.com/z/338388.html