我有一段代码。
File file = new File(path);
FileReader fr = new FileReader(file);
BufferedReader br = new BufferedReader(fr);
String temp;
StringBuffer sb=new StringBuffer();
while((temp=br.readLine())!=null){
sb.append(temp);
sb.append(" ");
}
这将从文件中读取每一行并将其存储在 StringBuffer 中。我的文件非常大,我需要对其进行多线程处理,以便处理速度更快。 有没有办法说我只想将文件的 1/4 写入缓冲区?
我知道我不能这么说。但我想要与此等效的东西。
for(int i=0; i<reader.length/4; i++)
最佳答案
您应该能够创建 1 file channel每个线程,并在文件的偏移处使用它。从文件 channel 中,您可以获取文件的大小来计算分割并设置其当前位置。
关于java - 有没有办法将文件的 1/4 写入字符串缓冲区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15047243/