将字符串电话号码转换为整数

时间:2013-06-27 03:20:57

标签: java android

我在Java和Android方面都缺乏经验。我正在尝试检索存储在Android手机模拟器的其中一个联系人中的电话号码。虽然我成功获取它,但数字已经以“(987)654-3210”的格式返回一个字符串。 我想将其转换为整数或长整数。我怎样才能做到这一点?如果我使用Integer.parseInt(String number),则返回NumberFormatException。尝试使用Long.valueOf(String number)时失败。那我该怎么办?我希望它像“9876543210”,没有任何大括号或连字符。

2 个答案:

答案 0 :(得分:10)

使用long存储号码会更好

   String str="(987) 654-3210";
   String stt=str.replaceAll("\\D+","");
   long num= Long.parseLong(stt);
   System.out.println(num);

答案 1 :(得分:7)

这应该很简单。您可以在java中使用正则表达式来执行此操作,如下所示

phoneStr = str.replaceAll("\\D+","");

这将删除字符串中的非数字,并仅为您提供数字。然后你可以使用

int number = Integer.parseInt(phoneStr);