// 写文件
public static void writeFile() throws IOException {
File file = new File("D:\\Users\\lvxy\\Desktop\\CAT\\test.json");
String str = "{\"catProjectId\":1,\"catFileId\":1,\"sourceContent\":\"[{\\\"color\\\":\\\"0\\\",\\\"subscript\\\":\\\"0\\\",\\\"underline\\\":\\\"0\\\",\\\"superscript\\\":\\\"0\\\",\\\"strike\\\":\\\"0\\\",\\\"bold\\\":\\\"0\\\",\\\"content\\\":\\\"批注哈哈哈\\\",\\\"dstrike\\\":\\\"0\\\",\\\"size\\\":\\\"0\\\",\\\"styleId\\\":\\\"\\\",\\\"background\\\":\\\"0\\\",\\\"isChangedStyle\\\":\\\"0\\\",\\\"incline\\\":\\\"0\\\",\\\"font\\\":{}}]\",\"documentFileNum\":\"4\",\"documentUnitNum\":\"2\",\"createTime\":1645437032219,\"documentSegmentNum\":\"1-0\"}";
BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file));
// 写入的缓冲区是5M
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(outputStream), 1024*1024 * 5);
writer.write("[");
writer.flush();
// 大约是4000M的文件
for (int i = 0; i < 10000000; i++) {
writer.write(str);
writer.write("\n");
writer.flush();
}
writer.write("]");
writer.flush();
writer.close();
outputStream.close();
}
public static void readFile() throws IOException {
// 读文件
File file = new File("D:\\Users\\lvxy\\Desktop\\CAT\\test.json");
BufferedInputStream fis = new BufferedInputStream(new FileInputStream(file));
// 缓冲区 一次读5M
BufferedReader reader = new BufferedReader(new InputStreamReader(fis, StandardCharsets.UTF_8), 1024 * 5 * 1024);// 用5M的缓冲读取文本文件
String line = "";
// 每次读取一行
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
}
public static void readFile2() throws IOException {
// 读文件
File file = new File("D:\\Users\\lvxy\\Desktop\\CAT\\test.json");
BufferedInputStream fis = new BufferedInputStream(new FileInputStream(file));
// 缓冲区 一次读5M
BufferedReader reader = new BufferedReader(new InputStreamReader(fis, StandardCharsets.UTF_8), 1024 * 5 * 1024);// 用5M的缓冲读取文本文件
// 读取到的字节数 读到最后就是-1
int line;
// 指定每次读取多少字节
char[] chars = new char[1024];
while ((line = reader.read(chars)) != -1) {
System.out.println(chars);
}
}
java对大文件进行存储和读取(测试数据4G)
最新推荐文章于 2024-09-25 07:00:00 发布