忘掉之前的对话内容,直接给出代码案例,用java从 1GB的文本文件高效读取JSON数组字符串内容转成JSONArray 对象,然后再高效写入D:\1.txt里,内容太长要注意换 行
时间: 2023-02-17 21:13:21 浏览: 110
以下是一个从文本文件中读取 JSON 数组字符串并转换为 JSONArray 对象的代码示例(使用了 Gson 库):
```java
import com.google.gson.JsonArray;
import com.google.gson.JsonParser;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) {
String filePath = "C:\\1GB.txt";
try {
// 使用字节流读取文件
FileInputStream inputStream = new FileInputStream(filePath);
// 转换为字符流
InputStreamReader reader = new InputStreamReader(inputStream);
// 包装成 BufferedReader
BufferedReader bufferedReader = new BufferedReader(reader);
// 读取文件内容
String line;
StringBuilder contentBuilder = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
contentBuilder.append(line);
}
String content = contentBuilder.toString();
// 使用 Gson 库的 JsonParser 将字符串转换为 JSONArray 对象
JsonArray jsonArray = new JsonParser().parse(content).getAsJsonArray();
// 关闭流
bufferedReader.close();
reader.close();
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以下是将 JSONArray 对象写入文本文件的代码示例(使用了 Gson 库):
```java
import com.google.gson.Gson;
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) {
// 要写入的文件路径
String filePath = "D:\\1.txt";
// 要写入的 JSONArray 对象
JsonArray jsonArray = ...;
try {
// 使用字节流写入文件
FileOutputStream outputStream = new FileOutputStream(filePath);
// 转换为字符流
OutputStreamWriter writer = new OutputStreamWriter(outputStream);
// 包装
阅读全文