String str;
str = request.getParameter("quantity");
try{
int i = Integer.parseInt(str);
out.println(i);
}
catch(Exception ee){
out.println(ee);
}
每次输出抛出NumberFormatException的......我无法解析字符串为整数无法解析字符串为int .....异常每次
String str;
str = request.getParameter("quantity");
try{
int i = Integer.parseInt(str);
out.println(i);
}
catch(Exception ee){
out.println(ee);
}
每次输出抛出NumberFormatException的......我无法解析字符串为整数无法解析字符串为int .....异常每次
我有一个类似的问题。尝试这个。即时通讯假设这是C#。 哦,对不起,我只是注意到它说的jsp。我相信这个概念是一样的,但我没有尝试过jsp。
String str;
str = request.getParameter("quantity");
int newValue;
try{
int.TryParse(str , out newValue);
out.println(newValue);
}
catch(Exception ee){
out.println(ee);
}
您应该检查如果您的号码是太大,无法在int
或@Noob奔放的建议,检查内容。
您可以使用此方法来尝试的情况下,解析你总是不知道该值:
public static int parseWithDefault(String number, int defaultVal) {
try {
return Integer.parseInt(number);
} catch (NumberFormatException e) {
return defaultVal;
}
}
检查str.It的值可以是一些不能被转换成int,如“ST”
为什么不调试你的代码,看看str的值是什么,还要检查NumberFormatException堆栈跟踪,因为它会告诉它试图解析什么值。
首先要做的事情应该是确保字符串可以完全转换为数字。
"48" --> a number
"--48" --> not a number
如果需要,您应该解析字符串或使用正则表达式来删除非数字字符。为了增加安全性,您可以在默认使用情况下输入一个默认数字,然后调用TryParse
。这样,无论发生什么,它都不会使您的应用程序崩溃,但您仍然可以记录错误。
检查字符串的内容是否可以转换为int!如果字符串是数字像“90”或字母数字像“90A”等... – NINCOMPOOP
什么是str的价值? – Sudz
str的值是2 ..........但是当它在html文本框中显示时,其值是2 / –