
我们可以使用Gson Streaming API读写文件,它基于顺序读写标准。 JsonWriter和JsonReader是为Streaming API中的流式写入和读取而构建的核心类。 JsonWriter将 JSON 编码值写入流,一次一个令牌。该流包含文字值(字符串、数字、布尔值和 null)以及开始和结束分隔符对象和数组,JsonReader将 JSON 编码值读取为令牌流。此流包含文字值(字符串、数字、布尔值和空值)以及开始和结束分隔符。标记按照深度优先顺序r进行遍历,与它们在 JSON 文档中出现的顺序相同。
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<strong> </strong>
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();
}
}
}Adithya 25 Java Scala Python
以上就是我们如何使用Gson流式API在Java中读写文件?的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号