Как прочитать двойной из файла с помощью сканера без InputMismatchException - PullRequest
0 голосов
/ 13 марта 2019

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

Текстовый файл выглядит следующим образом:

Галька Флинстоун \ n

1 2.2 \ n

Это строка текста \ n

Это мой код:

public static void main(String[] args) throws FileNotFoundException {
       File file = new File("input.txt");
       Scanner scanner = new Scanner(file);
       String s1 = scanner.next(); // s1 is assigned to Pebbles
       String s2 = scanner.next(); // s2 is assigned to Flintstone
       int x = scanner.nextInt(); // x is assigned to 1
       double y = scanner.nextDouble(); // y is assigned to 2.2
       scanner.nextLine(); // Advance scanner to beginning of next line
       String s3 = scanner.nextLine();
       scanner.close(); // s3 is assigned to "This is a line of text"
       System.out.print(y);
   }

Как мне заставить сканер читать 2.2 как двойное число?Смена локали не работает.Изменение десятичной запятой на запятую тоже не работает.

...