我有一个将文本文件解析为List类型的方法。但是由于某种原因,Integer.valueOf()会引发NumberFormatException。该文件当前的数字是1到7,因此内容应该没有问题。
我尝试改用Integer.parseInt(),但它也不起作用。修剪传递给valueOf()的字符串,并且仅包含数字
我的方法如下:
public List<Integer> generate() throws Exception{
InputStream stream = new FileInputStream(LIST);
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
List<Integer>ls = new LinkedList<Integer>();
String line = reader.readLine();
while (line != null){
ls.add(Integer.valueOf(line.trim()));
line = reader.readLine();
}
log.debug("List generated");
return ls;
}
错误:
Exception in thread "main" java.lang.NumberFormatException: For input string: "1"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68)
at java.base/java.lang.Integer.parseInt(Integer.java:658)
at java.base/java.lang.Integer.valueOf(Integer.java:989)
at arek.DataLoader.generate(DataLoader.java:56)
at arek.Calculator.<init>(Calculator.java:18)
at arek.Main.main(Main.java:9)