java - 如何在没有国家代码的情况下获得电话联系?

标签 java android

我可以通过手机获取联系电话。我想知道如何从中删除国家代码。也就是说,如果用户的电话号码带有国家代码 (+91-9876543210),我需要没有前缀国家代码的电话号码 (9876543210)。

提前致谢。

最佳答案

我建议使用 libphonenumber轻松解析电话号码。您可以通过这种方式拆分国家代码和电话号码。

try {
    // phone must begin with '+'
    PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
    Phonenumber.PhoneNumber numberProto = phoneUtil.parse("+91-9876543210", "");
    int countryCode = numberProto.getCountryCode();
    long nationalNumber = numberProto.getNationalNumber();
    Log.i("code", "code " + countryCode);
    Log.i("code", "national number " + nationalNumber);
} catch (NumberParseException e) {
    System.err.println("NumberParseException was thrown: " + e.toString());
}

关于java - 如何在没有国家代码的情况下获得电话联系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31175672/

相关文章:

java - 如何在J2ME中播放内存卡中文件中的.mp3歌曲

java - 摆脱 List<GenericClass<T>>.toArray() 中的警告

java - 从非 Activity 类开始新 Activity

java - 如何将 Activity Intent 传递给另一个类?

android - 在Android文本框中打印经度和纬度

java apache tomcat 没有检测到 jsp 文件,即使它存在

java - Selenium 3.3.1 独立 Jar

java - svnkit,列出SVN存储库的所有文件,而不 check out 文件

Android Chromecast : Casting local audio file fails

android - 支持:CardView minimum SDK?