懂java的朋友看代码就知道了:
String comma = "!!!";
BufferedReader br = null;
FileInputStream inputStream = new FileInputStream(file);
InputStreamReader inputReader = new InputStreamReader(inputStream,
encoding);
br = new BufferedReader(inputReader); // 缓冲指定文件的输入
StringBuffer book = new StringBuffer();
// 第一行是!!!的时候,忽略掉
String oneLine = br.readLine();
int count = 0;
while (oneLine != null) {
oneLine = br.readLine();
count++;
// 一次读入一套完整数据(即:2个!!!之间的)
if (!comma.equals(oneLine) && oneLine != null) {
book.append(oneLine).append("\r\n");
continue;
}
。。。。。。。对读取部分进行处理
}
br.close();
这段程序是读取两个标志之间的部分进行处理的,这样可以防止文件过大而导致内存溢出。
希望对朋友们有帮助。
ps:代码绝对没有问题,我是在项目中copy出来的,需要的朋友修改相应需要的部分就可以了
本文介绍了一种使用Java实现的文件分段读取方法,通过读取两个特定标记之间的内容来避免大文件导致的内存溢出问题。该方法利用BufferedReader逐行读取文件,并在遇到指定标记时开始收集数据。
2251

被折叠的 条评论
为什么被折叠?



