2015-09-22 2 views
0

Я есть следующий кодJava useDelimiter и nextDouble

Scanner isbnTable = new Scanner(isbnFile); 
isbnTable.useDelimiter("[;,\\n]"); 
while(isbnTable.hasNextDouble())System.out.println(isbnTable.nextDouble()); 

и я читаю файл с содержимым

3.10;8.35;5.96 
7.36;6.25;9.32 

Однако выход

3.1 
8.35 

Почему Безразлично Показывать все цифры

+3

потому что '\\ n' может и не быть новым символом линии. Мой совет использует что-то вроде '[^ .0-9]' в качестве разделителя или читает строку как String и расщепляется на основе ';' (более быстрый вариант) – TheLostMind

ответ

0

Проблема в том, что я использовал файл с кодировкой окон конца строки. Решение состоит в использовании

isbnTable.useDelimiter(";|\r\n|\n"); 
Смежные вопросы