2015-03-25 3 views
0

Как читать в файле в массиве строк с помощью Scanner? Файл имеет указанное количество строк, скажем, 100. Здесь есть много примеров, используя arrayList и BufferedReader, но не сканер или массивы, которые уже исправлены по размеру.Чтение в файле в массив строк

public String[] array; 
Scanner inputStream = null;  
public String line; 

public practice(String theFile) {  
    array = new String[100]; 
    try {   
     inputStream = new Scanner(new FileInputStream(theFile)); 

     while (inputStream.hasNextLine()) { 
      for (int i = 0; i < array.length; i++){ 

       //dont know what to put here   
      } 
     }   
    } catch(FileNotFoundException e) { 
     System.out.println(e.getMessage()); 
    } 
    inputStream.close(); 
} 
+0

Вам не нужно, чтобы проверить имеет следующую строку, потому что имеет фиксированную длину и попробовать поймать обрабатывать все это. Просто используйте цикл for, но не цикл while. –

ответ

2

Вам не нужно проверять наличие следующей строки, потому что у вас есть фиксированная длина и попытка уловить, чтобы справиться со всем этим. Просто используйте цикл for, но не цикл while. Оттуда, это просто все сканер вещь:

for (int i = 0; i < array.length; i++) 
{ 
    array[i] = inputStream.nextLine();   
} 
+0

Я вижу, как только я взял мой цикл while, он сработал. Большое спасибо! Как только я доберусь до 15 пунктов, я обязательно отвечу на ваш ответ. Еще раз спасибо! – code

+0

Обязательно. В любой момент. –

1
int i = 0; 

while (inputStream.hasNextLine() && i < array.length()) 
{ 
    array[i] = inputStream.nextLine(); 
    i++; 
}  
+0

Большое спасибо! – code

+0

не проблема :) ** я должен сказать: ** использование try..catch-блока в качестве фона для обработки общих исключений (например, вне диапазона) - очень плохая практика. пожалуйста, используйте try .. поймайте ТОЛЬКО, когда попытка попытаться отобразить все исключения в покере и их решения невозможна, или приведенный код, вероятно, будет слишком запутанным. – ymz

+0

Хм, но причина, по которой я использовал попытку и уловку, состояла в том, что я сохранил получение ошибок компиляции, вызванных исключениями. – code

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