java.lang.NumberFormatException:无法将String解析为整数

Aft*_*Ali 4 java android exception-handling type-conversion

当我遇到这个问题时,我正在研究我的android项目

我希望这将像"0345303709"7这样的字符串转换为整数,但我不断得到NumberFormatException.

我在这里搜索了所有问题,但没有找到解决我问题的方法.

以下是我的Android代码:

 String edit_cell=cellnumber.getText().toString();
        try
        {
            if(cellnumber.getText().length()==11 && TextUtils.isEmpty(edit_cell)!=true && edit_cell!=null)
            {

                cell=Integer.valueOf("03462651882");
            }
            else
            {                   
                Toast.makeText(this, "Invalid CellNumber\n Write CellNumber like this Format:\nNetworkCode Followed by your Number\n",Toast.LENGTH_LONG).show();
                Toast.makeText(this, "eg:03213213214",Toast.LENGTH_LONG).show();    
            }
        }

        catch(Exception ex)
        {
            Toast.makeText(this, "Invalid cellnumber\n Write cellNumber line this format:\n Network code followed by your number\n",Toast.LENGTH_LONG).show();
            Toast.makeText(this, "eg:03213213214",Toast.LENGTH_LONG).show();    
        }      
Run Code Online (Sandbox Code Playgroud)

我使用的是eclipse Helios IDE和Android版本是2.2 api 8

Dmi*_*tri 7

它对于整数来说太大了,你需要一个龙.

编辑

没有注意到它是一个电话号码 - 绝对存储为一个字符串.

至于验证,很多人之前已经处理过这个问题.请参阅此处,例如:用于电话号码验证的全面正则表达式


Bhe*_*ung 5

那是因为整数处理的值太大了.整数可以处理的最大值是2147483647,这里.

您可以使用long(Long.valueOf())代替.