如何克隆或复制BufferedReader?

时间:2015-03-18 17:20:01

标签: java android multithreading bufferedreader

我正在创建一个Android应用程序,它将读取非常大的文件,大约有1.000到40.000行,这需要相当多的时间来进行单循环。因此,我正在尝试创建一个多线程阅读器,它创建多个线程,每个线程读取文件的特定部分,然后将所有小部分放在一个大数组或String中。 / p>

我正在使用BufferedReader循环遍历文件中的每一行,并存储行数 每次循环运行时,我都会检查lineNumber % LINES_PER_READER == 0是否为真。如果是,我创建一个新的读者线程,它应该读取文件中的下一个LINES_PER_THREAD - 行数。

我想(因为文件可能很大)如果我可以以任何方式复制或克隆BufferedReader,那么新的读者线程就可以从它创建的行开始读取,因为我已经有一个循环读取该行,而不是创建一个新的BufferedReader,读取每一行,直到我到达指定的行,然后开始读取实际值。

1 个答案:

答案 0 :(得分:1)

不要克隆BufferedReader。这会造成麻烦。只需将批量行发送到各个处理线程。