try
{
  String ss=request.getParameter("str");
  ss=ss.trim();
  int num=Inter.paresInt(ss);}
catch(Exception e){}试试行不行,你的程序的错误提示是“数据格式异常”是不是数据超出范围?

解决方案 »

  1.   

    楼上的兄弟,我是从数据库读出来的数据用Integer.parseInt()不行,用FORM传递过来的
    String又可以用那个Integer.parseInt();我用的数据库是sqlserver2000
      

  2.   

    1。仔细看看是否真的数字,是否有全角字符,是否有白空格;2。检查数字是否不能用integer parse,是否过大。试试看用Double甚至BigDecimal处理。
      

  3.   

    楼主,我告诉你的是一种方法,不是格式!!!!!rs为ResultSet类型
    String str=rs.getString("f_id");
    str=str.trim();
    int num=Inter.ParesInt(str);
      

  4.   

    String str=rs.getString("f_id").toString();
    str=str.trim();
    int num=Inter.ParesInt(str);
      

  5.   

    楼上的兄弟,你的方法我加进去就出现了NULLPOINTER的Exception
      

  6.   

    如果你Inter.ParesInt(str)里面的str不是数字的话,当然会有例外产生
      

  7.   

    那说明,你读出来的字符是NULL,把你读出来的数据打出来确认一下...
    另外程序建议这样写
    String str=rs.getString("f_id");
    System.out.println(":" + str + ":");
    str = (str==null?"":str.trim());
    try {
        int num=Inter.ParesInt(str);
    }catch(NumberFormatException e) {
        int num=0;//default值,或者其它exception处理
    }
      

  8.   

    那说明,你读出来的字符是NULL,把你读出来的数据打出来确认一下...
    另外程序建议这样写
    String str=rs.getString("f_id");
    System.out.println(":" + str + ":");
    str = (str==null?"":str.trim());
    try {
        int num=Inter.ParesInt(str);
    }catch(NumberFormatException e) {
        int num=0;//default值,或者其它exception处理
    }
      

  9.   

    楼上兄弟是对的,那怎么才能让它读出来不是NULL那??
      

  10.   

    真接用
    rs.getInteger()不就行了吗?
      

  11.   

    真接用
    rs.getInteger()不就行了吗?
      

  12.   

    但是我那个在SQLSERVER的数据类型是CHAR啊
      

  13.   

    说明你数据库里存储的是null
    不是String,也不是int,更不是。
    赫赫
      

  14.   

    to 楼上,不是的,我打开数据库能看到里面有值,不是NULL
      

  15.   

    楼主,你的记录指针下移了没?
    有没有next()while(rs.next())
    {
       .
       .
       .
    }
      

  16.   

    if(str!=null){
       int num=Inter.ParesInt(str);
    }
      

  17.   

    我也想说这个:
    楼主,你的记录指针下移了没?
    有没有next()while(rs.next())
    {
       .
       .
       .
    }
      

  18.   

    同意fruitfull(fruitfull) 的看法
    你还需要看获取的字符串是否为空
      

  19.   

    一般从DB取数据的写法是这样的,如果这样还是不行,请检查一下SQL语句,是否能正确取出你要的值.
    while (rs.next()) {
        String str=rs.getString("f_id");
        System.out.println(":" + str + ":");
        str = (str==null?"":str.trim());
        try {
            int num=Inter.ParesInt(str);
        }catch(NumberFormatException e) {
            int num=0;//default值,或者其它exception处理
        }
    }
    }