1

libphonenumberGoogle ライブラリを使用して、番号を国際番号からローカル番号に変換しようとしています。

国際電話番号は「+97239658320」です。

ローカル番号 (ここイスラエルでは): "039658320"

http://code.google.com/p/libphonenumber/

    PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();

    PhoneNumber phone = null;

    try
    {
        phone = PhoneNumberUtil.getInstance().parse("+97239658320", null);
    }

    catch (NumberParseException e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

ただし、「電話」の結果は次のとおりです。

Country Code: 972 National Number: 39658320 (without the leading zero)

どうすれば正しく変換できますか?

4

1 に答える 1

3

プロジェクトページの簡単な例を見ると、解析後に次のものが必要であることがわかります。

{
country_code: 972
national_number: 39658320
}

目的の形式で取得するには、 format でフォーマットする必要がありますNATIONAL

phoneUtil.format(phone, PhoneNumberFormat.NATIONAL)

電話番号の区切り記号を削除するには、 android.telephony.PhoneNumberUtilsのstripSeparators()をご覧ください。

于 2012-01-09T20:01:56.873 に答える