Integer.valueOf()引发NumberFormatException

时间:2019-06-02 19:45:40

标签: java

我有一个将文本文件解析为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)

0 个答案:

没有答案