当前位置: 首页 > 知识库问答 >
问题:

如何使用国际格式的libphonenumber格式化电话号码。

茹正祥
2023-03-14

在Github上libphonenumber提供的文档中,有一个演示,它将提供的任何数字转换为国际格式,例如4915213116250转换为49 1521 3116250

我想在C#中使用相同的功能。

在libphone的文档中,需要解析号码并提供国家/地区。但是,演示在不提供地区/国家信息的情况下工作。有人能告诉我是怎么做的吗?

共有2个答案

劳和歌
2023-03-14

@danyolgiax差点就有了。你是这样做的:

var phoneUtil = PhoneNumberUtil.GetInstance();
var numberProto = phoneUtil.Parse("+4915213116250", "ZZ"); //why ZZ means international i don't know
var formattedPhone = phoneUtil.Format(numberProto, PhoneNumberFormat.INTERNATIONAL);

记住使用phoneUtil。IsValidNumber如果您不确定电话号码是否有效。还要注意,phoneUtil。解析可能会抛出。

叶福
2023-03-14

你试过这个吗?

var phoneUtil = PhoneNumberUtil.GetInstance();
var numberProto = phoneUtil.Parse("1234567890", "IT");
var formattedPhone = phoneUtil.Format(numberProto, PhoneNumberFormat.INTERNATIONAL);

这会给你"39 123 456 7890"

 类似资料:
  • 在我的iOS应用程序中,我必须转换一个电话号码(在联系人),并将其转换为国际格式(自动发送短信与extern库)。我看到了libPhoneNumber,但问题是我们必须输入国家代码,应用程序必须在所有(几乎)国家工作,所以我不知道用户的国家是什么。 以下是图书馆的工作原理:

  • 问题内容: 我正在使用 SMS应用程序 ,需要能够将发件人的电话号码从 +11234567890转换 为 123-456-7890, 以便可以将其与 MySQL数据库中的 记录进行比较。 数字以后一种格式存储,可在网站上的其他地方使用,我宁愿不更改该格式,因为它将需要修改大量代码。 我将如何使用PHP? 谢谢! 问题答案:

  • 你好,我有一个电话号码,是:,我想把它转换成:。有一个图书馆http://code.google.com/p/libphonenumber/这可以很好地进行转换,但它需要一个电话号码和一个我无法提供的国家/地区代码,因为我正在读取手机以从DB转换。 基本上,我想要一个脚本或库,将E164作为参数,并将其转换为国际标准格式,如下所示: 欢迎提出任何意见,提前谢谢。

  • 我从一个看起来很棒的图书馆听到了很多好消息,但我发现自己处于微妙的境地。 这是我工作过的第一个将电话号码存储在数据库中的项目。 我读过一些关于E.164格式的书,我确实打算用这种格式在我的数据库中存储所有电话号码。 我面临的问题是数据源。我无法控制数据源。我只知道我收到了一堆电话号码,它们的格式不一致。有些有国际延伸,有些没有。有些有括号、连字符、前导0等。有些没有。 我如何可能从上述来源提取电话

  • 问题内容: 我想知道如何使用angularjs指令在输入字段中自动设置数字格式?在输入字段中输入6042919283时,我希望它显示为604-291-9283。 谢谢 问题答案: 您可以使用UI Utils遮罩。 它允许您定义允许的输入格式,并将为您处理验证以及格式设置

  • 以下是在格式化模式中使用字符。 编号 类 描述 1 如果数字较小,则显示0。 2 显示忽略前导零的数字。 3 小数分隔符。 4 分组分隔符。 5 指数格式的尾数和指数分隔符。 6 格式分隔符。 7 负数字前缀。 8 将乘以100后的数字显示为百分比。 9 与1000相乘后显示数字为千位。 10 将字符标记为数字前缀/后缀。 11 标记特殊字符的引号。 在这个例子中,我们根据不同的模式来格式化数字。