2016-04-27 1 views
0

Я пишу метод для своего класса java. это выглядит так далеко:File Writer, который помещает ряд строк перед строкой, которую он собирается написать

String file_name; 
String line; 

void addLine(file_name, line){ 
      int line_number; 
      try { 
       FileWriter writer = new FileWriter(file_name, true); 
       PrintWriter out = new PrintWriter(writer); 

       out.println(line_number + line); 
      } 
      catch (IOException e){ 
       System.out.println(e); 
      } 
     } 

Как я должен определить LINE_NUMBER поэтому было бы проверить, сколько строк были там в файле, прежде чем я распечатал рядом в него?

ответ

0
  int totalLines = 0; 

      BufferedReader br br = new BufferedReader(new FileReader("C:\\filename.txt")); 
       String CurrentLine = ""; 
       while ((CurrentLine = br.readLine()) != null) { 
        ++totalLines 
       } 

Я думаю, что вы должны действительно прочитать файл с помощью буферизатора. а затем продолжать приращение totalLines, пока она не достигнет конца файла

+0

Это похоже на разумное решение. Благодаря :) –

0

Вы можете рассчитывать их с помощью функции публикуемой здесь: Number of lines in a file in Java

Они проверили его с лог-файлом в 150 МБ и, кажется, чтобы быть быстрыми.

Смежные вопросы