Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 1
Регистрация: 29.03.2013
Сообщений: 9

NumberFormatException при чтении файла

14.11.2015, 13:42. Показов 1462. Ответов 5

Студворк — интернет-сервис помощи студентам
При чтении файла вылетает NumberFormatException, хотя кроме чисел и знаков переноса строки в файле ничего нет. Как быть?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public static void main(String[] args) throws Exception
    {
 
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String filename = reader.readLine();
        BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
        String[] Array;
        String line;
        
        try {
            while ((line = br.readLine()) != null) {
                Array = line.split("\n");
                Arrays.sort(Array);
 
                for (String s : Array) {
                    int num = (Integer.parseInt(s.trim()));
                    if ((num % 2) == 0) {
                        System.out.println(num);
                    }
                }
 
            }
        }catch (NumberFormatException e)
        {
           e.printStackTrace();
        }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.11.2015, 13:42
Ответы с готовыми решениями:

Ошибка при чтении файла
Всем привет. Пытаюсь считать из файла, который программно не создаю, создаю на диске и прописываю путь, но вылетает исключение...

EOFException при чтении HashMap из файла
Здравствуйте. Я пытаюсь написать свое первое веб - приложение (морской бой). Такая проблема: я еще не знаком с базами данных, поэтому в...

При чтении из файла появляются фантомные строки
Добрый вечер. При использовании BufferedReader с аргументом виду FileReader каждое второе чтение readLine() выдаёт в дебаге ""....

5
 Аватар для mocivan
95 / 95 / 50
Регистрация: 07.07.2015
Сообщений: 208
14.11.2015, 15:04
содержание файла какое?

предположу, что ошибка тут
Цитата Сообщение от asada Посмотреть сообщение
Array = line.split("\n");
замени регулярку на "\\s" например
0
0 / 0 / 1
Регистрация: 29.03.2013
Сообщений: 9
14.11.2015, 15:19  [ТС]
В файле целочисленные числа разделенные знаком переноса строки.
К примеру вот так:
5
6
1
5
9
8
712
5
6

Задача вывести в консоль отсортированные четные числа.
0
 Аватар для mocivan
95 / 95 / 50
Регистрация: 07.07.2015
Сообщений: 208
14.11.2015, 15:47
попробуй))

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package samples.temp;
 
import javax.swing.*;
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
 
/**
 *
 */
public class Temp {
    public static void main(String[] args) throws Exception {
 
        String path = JOptionPane.showInputDialog("Введите путь к файлу: ");
        List<Integer> list = new ArrayList<>();
 
        try (Scanner scanner = new Scanner(new File(path))) {
            while (scanner.hasNext()) {
                list.add(scanner.nextInt());
            }
 
            Collections.sort(list);
 
            list.stream().filter(i -> i % 2 == 0).forEach(System.out::println);
 
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
1
0 / 0 / 1
Регистрация: 29.03.2013
Сообщений: 9
15.11.2015, 21:13  [ТС]
Моя рабочая версия. Может кому-то пригодится.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public static void main(String[] args) throws Exception
    {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String filename = reader.readLine();
        BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
        ArrayList<Integer> list = new ArrayList<Integer>();
        String line;
 
        try {
            while ((line = br.readLine()) != null) {
                list.add(Integer.parseInt(line.replaceAll("[^\\d]","")));
            }
 
            Collections.sort(list);
            for (int i = 0; i < list.size(); i++) {
                if((list.get(i) % 2) == 0)
                    System.out.println(list.get(i));
            }
 
        }catch (NumberFormatException e)
        {
           e.printStackTrace();
        }
    }
0
61 / 61 / 15
Регистрация: 18.05.2015
Сообщений: 322
16.11.2015, 12:29
Решение с применением фишек Java 8:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package testingtest;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.IntStream;
 
public class TestingTest {
 
    public static void main(String[] args) throws IOException {
        try{
        int[] ar = Files.lines(Paths.get("d:/nums.txt")) // читаем в файл
                .map(Integer::parseInt) // преобразуем строки в Integer
                .flatMapToInt(IntStream::of) // создаем Stream из примитивов
                .toArray(); // преобразуем в массив
        System.out.print("x: {\t"); // вывод
        for (int x : ar) // цикл для вывода
            System.out.print(x+"\t"); // вывод очередного элемента
        System.out.println("}"); // конец вывода
        } catch (NumberFormatException e){ // если возникло исключение
            System.out.println("number format error"); // сообщение об ошибке
        }
    }// main
} //class
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.11.2015, 12:29
Помогаю со студенческими работами здесь

Ошибка при чтении файла
Здравствуйте! Я только начал работать с Java (Среда NetBeans IDE 7.3.1) и столкнулся с проблемой. У меня есть класс, и я храню его в...

"Нарушение прав доступа при чтении по адресу" при чтении структур из бинарного файла
Пытаюсь разобраться со структурами в бинарных файлах. Допустим, есть массив структур. Записываю его в бинарный файл (закомментированный...

Как при чтении файла проверить достигнут ли конец файла?
Как при чтении файла проверить достигнут ли конец файла? Dim Red As IO.BinaryReader Red = New...

Можно ли при чтении из файла элементов в список удалять эти элементы(без очистки файла)
Допустим,есть файл,в нём записаны 3 обьекта(отличаются одним параметром,по которому как раз и достаются обьекты из файла).Пусть второй...

Ошибка при вызове метода класса, при чтении из файла
добрый день, пытаюсь считать данные из и запихнуть их в список в файле у меня вот такие данные a01 b10 А и Б надо запихнуть в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru