string-请问各位大侠,java字符串转化成整数为什么会出现如下的错误?谢谢

问题描述

请问各位大侠,java字符串转化成整数为什么会出现如下的错误?谢谢

type Exception report

message An exception occurred processing JSP page /admin/categoryadd.jsp at line 15

description The server encountered an internal error that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /admin/categoryadd.jsp at line 15

12: out.println(request.getParameter("pid"));
13: int pid = 0;
14: if(null!=strpid){
15: pid = Integer.parseInt(strpid);
16:

17: }
18:

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

root cause

java.lang.NumberFormatException: For input string: "10/"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
java.lang.Integer.parseInt(Integer.java:492)
java.lang.Integer.parseInt(Integer.java:527)
org.apache.jsp.admin.categoryadd_jsp._jspService(categoryadd_jsp.java:78)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

解决方案

先看strpid是什么字符串,是不是合法数字字符串

解决方案二:

从你的stracktrace看,你要转换的那个字符串是"10/",多了个"/",所以明显会出错。

解决方案三:

10后面怎么会有一个除号?是解析的问题还是输出错误的问题。

解决方案四:

String strpid=(String)request.getParameter("pid")
你是这么写的么,request.getParameter取得的数据都要强转为String

解决方案五:

java.lang.NumberFormatException: For input string: "10/"
很明显是你传入的String不对,多了一个除号,检查下。

解决方案六:

出现了非数字的字符,你可以写个正则判断下是否是纯数据的字符串

解决方案七:

不是合法的数字呀,后面带了个/

解决方案八:

字符串必须是合法的整数字符串,不能有其他的字符

解决方案九:

10后面多了个 /。你的业务如果有很多都是有这个多个/的话或者个别的有这个/的话。在转换前用strpid = strpid.replaceAll("/",""); 将/替换成空就行了。

解决方案十:

java.lang.NumberFormatException: For input string: "10/"

时间: 2024-08-31 16:00:05

string-请问各位大侠,java字符串转化成整数为什么会出现如下的错误?谢谢的相关文章

java字符串转化小白求解!

问题描述 java字符串转化小白求解! 输入个人信息,将出生日期中的月日用*代替并输出. 老师出的题,做了4个多小时,实在不会做了,求教各位大神! 解决方案 Date的构造函数中,年是以1900开始的,因此输入的年份要减去1900,月份是0-11代表12个月,0代表1月份,因此输入的月份要减1.日是完全对应. int year = 1996; int month = 10; int day = 11; Date date = new Date(year - 1900 month - 1 day)

js 字符串转化成数字的代码_javascript技巧

方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把值转换成浮点数.只有对String类型调用这些方法,这两个函数才能正确运行:对其他类型返回的都是NaN(Not a Number). 一些示例如下: parseInt("1234blue"); //returns 1234 parseInt("0xA"); //returns 10 par

PHP中将字符串转化为整数(int) intval() printf() 性能测试_php技巧

背景.概述 早在Sql注入横行的前几年,字符串转化为整数就已经被列为每个web程序必备的操作了.web程序将get或post来的id.整数等值强制经过转化函数转化为整数,过滤掉危险字符,尽可能降低系统本身被Sql注入的可能性. 现如今,虽然Sql注入已经逐渐淡出历史舞台,但是,为了保证web程序的正常运行,减少出错概率,更好的保证用的满意度,我们同样需要将用户的不正确输入转化为我们所需要的. 转化方式 在PHP中,我们可以使用3种方式将字符串转化为整数. 1.强制类型转换方式 强制类型转换方式,

求助,字符串转成多维数组,在线等,谢谢

问题描述 如何把"1,2,3@4,5,6"此类格式的字符串转化成多维数组??初学者,要具体代码,谢谢 解决方案 解决方案二:vars="1,2,3@4,5,6";varres=s.Split('@').Select(x=>x.Split(',')).ToArray(); 解决方案三:string[]arr1=sr.ReadLine().Split(newchar[]{'@'},StringSplitOptions.RemoveEmptyEntries);for

[程序员面试题精选100 题]17.把字符串转换成整数

题目 输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析 这道题尽管不是很难,学过 C/C++语言一般都能实现基本功能,但不同程序员就这道题写出的代码有很大区别,可以说这道题能够很好地反应出程序员的思维和编程习惯,因此已经被包括微软在内的多家公司用作面试题.建议读者在往下看之前自己先编写代码,再比较自己写的代码和下面的参考代码有哪些不同. 我们需要考虑一下几个方面的问题: (1)正负问题: 由于整数可能不仅仅之含有数字,还有可能以'

剑指offer系列之四十八:把字符串转成整数

题目描述 将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数 这里的关键是要对输入的字符串进行全面的考虑.包括字符串是否有效的判断.是否是负数以及字符串表示的整数是否越界等问题.对于字符串有效性的判断主要是null以及空串的判定:负数之所以需要判断是因为在计算的时候是有用的:而是否越界的问题也是需要考虑的.因为一个越界的数是不可能计算出来的,那么这时候可以简单返回一个0,表示越界的数.这三点都考虑之后,整体代码的健壮性就比较好了.下面是这种思路的实现代码(已被牛客AC),详细的已经在

Java字符串分割

1. java.lang.String 的 split() 方法, JDK 1.4 or later split public String[] split(String regex, int limit) 根据匹配给定的正则表达式来拆分此字符串. 此方法返回的数组包含此字符串的每个子字符串,这些子字符串由另一个匹配给定的表达式的子字符串终止或由字符串结束来终止.数组中的子字符串按它们在此字符串中的顺序排列.如果表达式不匹配输入的任何部分,则结果数组只具有一个元素,即此字符串. limit 参数

java 字符串分割的三种方法(总结)_java

最近在项目中遇到一个小问题,一个字符串分割成一个数组,类似String str="aaa,bbb,ccc"; 然后以","为分割符,将其分割成一个数组,用什么方法去实现呢? 第一种方法: 可能一下子就会想到使用split()方法,用split()方法实现是最方便的,但是它的效率比较低 第二种方法: 使用效率较高的StringTokenizer类分割字符串,StringTokenizer类是JDK中提供的专门用来处理字符串分割子串的工具类.它的构造函数如下: publ

js字符串转化为日期及日期判断大小

//将字符串转换为日期  var begin=new Date($("#begin").val().replace(/-/g,"/"));  var end=new Date($("#end").val().replace(/-/g,"/"));  //js判断日期  if(begin-end>0){      alert("开始日期要在截止日期之前!");        return false;