【发布时间】:2016-09-26 11:07:49
【问题描述】:
所以,我有一个真正困扰我的问题。我有一个用 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 endlines。该程序在 Ubuntu 14.04 上运行。欢迎提出在哪里寻找问题的任何建议。
【问题讨论】:
-
不错的一个使用复制和粘贴将错误放入问题中!