我试图检索电话中的联系人号码,我已经成功地做到了这一点,但是每个联系人的格式是不同的。
我用于提取联系人信息的代码是
    Cursor cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null,null, null);
    while(cursor.moveToNext()) {
        String displayName = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
        String phoneNumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
        System.out.println("Phone Number " + phoneNumber);输出是
电话号码(555) 555-5555 电话号码5555555555
我不明白为什么会这样。在我使用的模拟器中,我以完全相同的方式添加了联系人。名字和手机号码。我不知道他们为什么不同
有人有什么想法吗?
发布于 2013-05-23 04:50:50
基本上,这是因为您正在使用的android的地区设置。我不知道您的确切情况,因为您的模拟器或应用程序设置可能不同。
我建议您使用PhoneNumberUtils以使您的电话号码以相同的格式输出。
另外,也请查一下这个类似的职位。
发布于 2013-05-23 05:13:43
正如@Youngjae所提供的,如果您想要格式化,那么可以尝试PhoneNumberUtils。
如果要删除所有格式,请按如下所示尝试String.replaceAll。
number.replaceAll("[^0-9]", "");这将删除所有特殊字符和括号。
https://stackoverflow.com/questions/16705641
复制相似问题