java 多线程读取txt 文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 多线程读取txt 文件相关的知识,希望对你有一定的参考价值。

以行为单位,读出数据后,处理行,再存储。我使用字节流,可以复制RandomAccessFile,但是无法实现以行为单位。还没想到什么好办法,请指教

多线程将读取的数据全部读取到一个Buffer里面去,然后再通过Buffer去处理,也就是生产者消费者模型,你将txt读取到一个ByteBuffer或者是大字节数组队列里面都可以,然后通过其它处理线程进行按行分隔 参考技术A public class Test
public static void main(String args[])throws Exception
File file = new File("D:\\Test.java");//Text文件
BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
String s = null;
while((s = br.readLine())!=null)//使用readLine方法,一次读一行
System.out.println(s);

br.close();;

追问

我要多线程读取,这是单线程

追答

你写到多线程里不就可以了?

参考技术B

“java”中多线程按行读取txt且每个线程读的内容不能重复,这么求“demo”?

参考技术A public class Test\\x0d\\x0a public static void main(String args[])throws Exception\\x0d\\x0a File file = new File("D:\\Test.java");//Text文件\\x0d\\x0a BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件\\x0d\\x0a String s = null;\\x0d\\x0a while((s = br.readLine())!=null)//使用readLine方法,一次读一行\\x0d\\x0a System.out.println(s);\\x0d\\x0a \\x0d\\x0a br.close();;\\x0d\\x0a \\x0d\\x0a

以上是关于java 多线程读取txt 文件的主要内容,如果未能解决你的问题,请参考以下文章

springbatch读取txt文件

C# 多线程同步访问一个文件怎么处理

java内存映射文件多线程读/写

python 超大txt 按行分块多线程读取

c# 为啥读取Txt文件太慢?

Java 多线程查找文件中的内容