0

有没有办法在Java中找到电话号码的国家代码?假设我给 9710334544,我将收到国家代码 91(如果是印度)。

请有任何建议。

4

2 回答 2

5

如果电话号码不包含国家代码号码作为前缀,则无法找出该电话号码来自哪个地区。

于 2012-07-02T13:16:59.963 回答
2

国家代码背后的思想是先区分国家,然后解析数字。这样做的原因是放弃相同数量的问题。

如果我的美国号码是,1234567890那么有什么可以将它与我的英国号码区别开来1234567890?答案是国家前缀。不幸的是,由于这个数字的本质(因为它区分相同的数字,你不能用这个数字来弄清楚)。

现在,如果您已经拥有完整的 13-14 位数字,您可以通过简单的除法(整数除法)找到国家代码:

long inputPhoneNumber = 123 (XXX) - XXX - XXXX;
long countryCode = inputPhoneNumber / 10000000000l;
// Will give 123

找到答案后,您可以将其与国家/地区相匹配,互联网提供了几个列出其国家/地区代码的网站:

国家代码

于 2012-07-02T13:27:02.053 回答