Итак, у меня есть проблема, которая меня действительно беспокоит. У меня есть простой парсер, который я сделал в java. Вот фрагмент соответствующего кода:
while( (line = br.readLine())!=null)
{
String splitted[] = line.split(SPLITTER);
int docNum = Integer.parseInt(splitted[0].trim());
//do something
}
Входной файл представляет собой CSV файл, первая запись которого является целым числом. Когда я начинаю синтаксический анализ, я получаю это исключение:
Exception in thread "main" java.lang.NumberFormatException: For input string: "1"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at dipl.parser.TableParser.parse(TableParser.java:50)
at dipl.parser.DocumentParser.main(DocumentParser.java:87)
Я проверил файл, он действительно имеет 1 в качестве своего первого значения (в этом поле нет других символов), но я все еще получаю сообщение. Я думаю, что это может быть из-за кодировки файлов: это UTF-8 с конечными концами Unix. И программа запускается на Ubuntu 14.04. Любые предложения, где искать проблему, приветствуются.