все вопросы по Java которые задают более 3х раз на форуме
Scanner
Запись от mutagen размещена 05.09.2012 в 10:01
Показов 24265
Комментарии 6
Читаем цифры из файла
1 2 3.1 4.2 | |||||
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 6
Комментарии
-
Запись от Пaтрик размещена 05.09.2012 в 12:54
-
Запись от mutagen размещена 10.09.2012 в 23:52
-
Подскажите, почему ваш код выдаёт ошибку
"Exception in thread "main" java.io.FileNotFoundException: text.txt (Не удается найти указанный файл)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputSt ream.java:195)
at java.io.FileInputStream.<init>(FileInput Stream.java:138)
at java.util.Scanner.<init>(Scanner.java:63 5)
at java.util.Scanner.<init>(Scanner.java:62 9)
at Sandbox.WeddingBill.main(WeddingBill.jav a:24)
at sun.reflect.NativeMethodAccessorImpl.inv oke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.inv oke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.jav a:43)
at java.lang.reflect.Method.invoke(Method.j ava:497)
at com.intellij.rt.execution.application.Ap pMain.main(AppMain.java:140)"
Весь вечер пытаюсь считать из файла даже не массив, просто одно число, чтобы тип int был после считывания. Пробовал считывать в виде String, а потом преобразовать - все ошибки выдает.Запись от idea_site размещена 29.08.2015 в 20:36
-
Запись от akzo размещена 29.08.2015 в 21:00
-
akzo, да все создавал. Вот так пробовал:
Сообщение от akzo
Ошибки:Java 1 2 3 4 5 6 7 8 9 10
public static void main(String[] args) { try { Scanner scanner = new Scanner(new File("res//text.txt")); String i = scanner.next(); int q = Integer.parseInt(i); System.out.println(q); } catch (FileNotFoundException e) { System.out.println("Error"); } }
Вот так пробовал:Java 1 2 3 4
Exception in thread "main" java.lang.NumberFormatException: For input string: "500" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:580) at java.lang.Integer.parseInt(Integer.java:615)
Ошибки:Java 1 2 3 4 5 6 7 8 9
public static void main(String[] args) { try { Scanner scanner = new Scanner(new File("res//text.txt")); int i = scanner.nextInt(); System.out.println(i); } catch (FileNotFoundException e) { System.out.println("Error"); } }
Не понимаю. String читает без проблем. int вообще никак не хочет.Java 1 2 3 4 5
Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:864) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nextInt(Scanner.java:2117) at java.util.Scanner.nextInt(Scanner.java:2076)
В файле всего одно число "500"Запись от idea_site размещена 29.08.2015 в 21:06
-
Вот важный момент, который я определил путем проб.
Сообщение от akzo
Если я создаю файл в ручную, через блокнот, вписываю туда обычное число (больше никаких посторонних символов или пробелов), сохраняю, запускаю - ошибка
А если я предварительно записываю в файл число через программу
Тогда все работает. В чём причина?Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
public static void main(String[] args) { int x = 5000; try { Formatter q = new Formatter("res//text.txt"); q.format("%d", x); System.out.println("Программа записала данные."); q.close(); Scanner scanner = new Scanner(new File("res//text.txt")); int i = scanner.nextInt(); System.out.println(i); } catch (FileNotFoundException e) { System.out.println("Error"); } }
Причём при первом случае, даже считав данные из файла в тип String, потом нет возможности преобразовать в int - выдает ошибку тожеЗапись от idea_site размещена 29.08.2015 в 22:08


