У меня проблема, я использую текстовый файл, который содержит более миллиона строк чисел. данные находятся в формате ниже, некоторые строки имеют 3 части данных, в то время как другие имеют только 2. Каждый раз, когда файл попадает на данные только с двумя битами, он, кажется, бросает нулевую ошибку (я использую Try/catch для чтения входного потока)проверить, не указан ли следующий токенизатор String
Если я удаляю значение 3 токенизатора, программа запускается до конца. Должен ли я поставить инструкцию if, чтобы проверить, есть ли еще один токен после второй строки? если так - как ??
while ((getLine = br.readLine()) != null) {
StringTokenizer tokenizer = new StringTokenizer(getLine);
String Value1 = tokenizer.nextToken();
String Value2 = tokenizer.nextToken();
String Value3 = tokenizer.nextToken();
//Does some more things
}
Данные
11 22 33
44 55
77 88 99
10 11
13 14
16 17 18
Вы случайно попробовали [Javadoc] (http://docs.oracle.com/javase/1.4.2/docs/api/java/util/StringTokenizer.html#hasMoreTokens())? Думаю нет. Во всяком случае, теперь класс «Сканер» выглядит более модным. –