1

我需要以相反的顺序读取 i 文件,因为现在它必须运行所有文件才能找到我知道它会在最后几行中的内容。我的目标是让我的应用程序更快以相反的顺序逐行读取文件的最快方法是什么?

例如:我的文件是

  line1
  line2
  line3
  line4
  line5

我想读

  line5
  line4
  line3
  line2
  line1

我知道有很多方法可以做到这一点...但是哪一种可以减少我的开销

4

1 回答 1

-1

试试这个,我认为这是以相反顺序读取文件的最快方法。

import java.io.*;  
import java.util.*;  
class FileReaderReverse  
{  
    public static void main(String[] args) throws IOException,FileNotFoundException  
    {  
        FileReader fr=new FileReader("abc.txt");  
        BufferedReader br=new BufferedReader(fr);  
        String s;  

        List<String> tmp = new ArrayList<String>();  
        do
        {  
            s = br.readLine();  
            tmp.add(s);  
        }while(s!=null);  


        for(int i=tmp.size()-1;i>=0;i--) {  
            System.out.println(tmp.get(i));  
        }  
    }  
}  
于 2013-09-12T12:23:17.147 回答