java 根据一个文件内容同时 *** 作多个文件?

java 根据一个文件内容同时 *** 作多个文件?,第1张

可以用多线程来 *** 作,java8的异步多线程CompletionStage接口,就可以实现,或者不使用多线程使用单线程版反应器模式Reactor(反应器)定制几个处理器接口,根据第一个文件的内容来分发到不同的处理器来处理你具体的需求,具体代码有空可以写给你

读取文件有三种方式,r, w, a,读,覆盖写, 追加写, new FileReader(file)以读的方式打开了文件,两个马上就以new FileWriter(file)方式覆盖写文件,文件自然是空白的,之后你readLine读到的是null,即String line是null,然后你要writer.write(line) 即writer.write(null)自然报空指针;

建议,如果边读边写,考虑RandomAccessFile类

java当中读和写是可以同时进行的,但限于同一个程序,相当于复制功能,你可以建立一个BufferedReader和BufferedWrite缓冲区,把读到的内容先放在缓冲区里,再进行 *** 作,这样可以提高读写效率。

当java

文件读写时

另一程序正在读写,很有可能会发生程序运行冲突,终止。可以把这种情况当异常处理,直接抛出。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11425265.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存