Float.intBitsToFloat throws java.lang.NumberFormatException.



我正试图将此字符串1090909116转换为浮点值。当使用Float.intBitsToFloat时,我会得到NumberFormatException。我试图通过将其设为整数来解决此问题,但我得到了以下错误:

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:963)
at Main.main(Main.java:32)

这是以下代码:


String file = Files.readString(Path.of(dir));
String[] pos = file.split("[ n]");
for(int i = 0; i < pos.length; i++) {
temp = "" + Float.intBitsToFloat(Integer.valueOf(pos[i], 10));
pos[i] = temp;
}

代码没有问题。问题是,该文件包含该方法无法转换为int的垃圾。你可以删除所有不需要的数字。

pos[i]=pos[i].replaceAll("[^0-9]", "");

相关内容

最新更新