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("-"))'
вместо!