java 多线程读取txt 文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 多线程读取txt 文件相关的知识,希望对你有一定的参考价值。
以行为单位,读出数据后,处理行,再存储。我使用字节流,可以复制RandomAccessFile,但是无法实现以行为单位。还没想到什么好办法,请指教
多线程将读取的数据全部读取到一个Buffer里面去,然后再通过Buffer去处理,也就是生产者消费者模型,你将txt读取到一个ByteBuffer或者是大字节数组队列里面都可以,然后通过其它处理线程进行按行分隔 参考技术A public class Testpublic 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 文件的主要内容,如果未能解决你的问题,请参考以下文章