Чтение текстового файла в массив в JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Чтение текстового файла в массив в Java

Сообщение Anonymous »

Я новичок в Java (сейчас учусь на первом курсе программирования), поэтому ответ на мой вопрос может быть прямо передо мной.

Моя цель — прочитать текстовый файл следующего содержания:

Код: Выделить всё

4563123,112211324135412
2312311,222121324135211
2312345,112211324135421
5527687,212111313124412
7867567,111111111111111
где первый набор чисел — это идентификатор, а второй набор — это набор ответов на тест (ключ от которого у меня есть). Как только я прочитаю ответы, мне нужно сохранить их в массиве (и я предполагаю, что это просто массив, поскольку мой класс еще не охватывает ArrayLists). Все эти данные необходимо будет хранить в одном массиве, поскольку мне нужно вернуть их в конце метода.

Вот код, который у меня есть:

Код: Выделить всё

public static String[] readFile(String filename)throws IOException{
Scanner inFile = new Scanner(filename);
String line;
String[] results = new String[101];
int i = 0;
while (inFile.hasNextLine()){
line = inFile.nextLine();
String[] incoming = line.split(",");
String wid = incoming[0];
String answer = incoming[1];
results[i] = wid;
results[i + 1] = answer;
i += 2;

}
inFile.close();
return results;
}
Имя файла String безопасно игнорировать, оно было передано из основного.

Каждый раз, когда я запускаю этот метод, я постоянно сталкиваюсь с ArrayOutOfBoundsException, в основном, когда я пытаюсь назначить входящее [1] для ответа.

Я смотрю на этот код дольше, чем, вероятно, хорошо для меня, но кажется, что я просто не могу уложить в этом голову. Будем признательны за любую помощь, будь то рассказ о том, что не так, или о том, что я могу сделать, чтобы улучшиться.

Вернуться в «JAVA»