gpt4 book ai didi

java - 我错过了什么? NumberFormatException 错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:31:06 25 4
gpt4 key购买 nike

我想读取一个只包含数字的 txt 文件。这样的文件是 UTF-8 格式的,数字仅由换行符(没有空格或任何其他东西)分隔。每当我调用 Integer.valueOf(myString) 时,我都会得到异常。

这个异常真的很奇怪,因为如果我创建一个预定义的字符串,例如“56\n”,并使用 .trim(),它会完美地工作。但在我的代码中,不仅不是这样,而且异常文本说它无法转换的是“54856”。我试图在那里引入一个新行,然后错误文本说它无法转换“54856“有了这个问题,我错过了什么?

File ficheroEntrada = new File("C:\\in.txt");
FileReader entrada =new FileReader(ficheroEntrada);
BufferedReader input = new BufferedReader(entrada);

String s = input.readLine();
System.out.println(s);
Integer in;
in = Integer.valueOf(s.trim());
System.out.println(in);

异常文本如下:

Exception in thread "main" java.lang.NumberFormatException: For input string: "54856"
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 Quicksort.main(Quicksort.java:170)

文件 in.txt 包括:

54856
896
54
53
2
5634

最佳答案

好吧,显然它与 Windows 和它使用的那些\r 有关...我只是尝试在 Linux VM 上执行它并且它有效。感谢所有回答的人!!

关于java - 我错过了什么? NumberFormatException 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55570148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com