我正在创建一个Android应用,并且正在从文本文件中读取一些坐标。
我Integer.parseInt(xCoordinateStringFromFile)
用来将X坐标转换为整数,并与Y坐标相同。
当我运行该应用程序时,在该行出现错误,如下所示:
BridgeData data = new BridgeData(
elements[0],
elements[1],
Integer.parseInt(elements[2]),
Integer.parseInt(elements[3]),
Integer.parseInt(elements[4]),
new GeoPos(Integer.parseInt(elements[5].split(",")[0]), Integer.parseInt(elements[5].split(",")[1])),
new GeoPos(Integer.parseInt(elements[6].split(",")[0]), Integer.parseInt(elements[6].split(",")[1])),
Integer.parseInt(elements[7]),
Integer.parseInt(elements[8])
);
变量elements
是一个String数组,它是通过在each上拆分当前行而创建的;
。
“主要”错误是:
java.lang.NumberFormatException: Invalid int: "3546504756"
我想知道这意味着什么,以及我该如何解决。
错误仅表示java无法将您尝试在调用中使用的String转换Integer.pasrseInt
为该数字超出整数范围。
您应该使用Long.parseLong
3546504756,因为数字超出整数范围。
确保发布您的BridgeData构造函数接受long作为参数而不是整数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句