String.split() не будет работать при чтении из файла

Я должен разделить строку, прочитанную из файла, отформатированного так:

NAME - Jane Doe

Я попытался использовать метод split() из String, но, похоже, он не работает. Вот мой код

    String line=reader.readLine();

    while(line!=null) {

        String[] readLine = line.split("-");

        String label= readLine[0];
        String data = readLine[1];
        Sytem.out.println("My "+ label +" is " + data)

        line=reader.readLine();

    }

Когда я пытаюсь запустить его, он дает мне java.lang.ArrayIndexOutOfBoundsException вString data = readLine[1];Я попытался отладки, и кажется, что ничего не разбивает и просто помещает все строки в String label= readLine[0];, Я копирую / вставляю одно и то же точное предложение вне цикла чтения, и оно отлично разбивается. Любая подсказка? Может ли строка измениться при чтении из файла? (Очень маловероятно, но очевидно, что проблема там). Заранее спасибо.

ПРИМЕЧАНИЕ: это не потому, что вокруг "-" есть пробелы, все равно работает нормально.

1 ответ

Использование'line.split("\\-") or line.split(Pattern.quote("-"))' вместо!

Другие вопросы по тегам