你试过这个吗?
var phoneUtil = PhoneNumberUtil.GetInstance();
var numberProto = phoneUtil.Parse("1234567890", "IT");
var formattedPhone = phoneUtil.Format(numberProto, PhoneNumberFormat.INTERNATIONAL);
这将为您提供"+39 123 456 7890"
@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.Parse
可能会抛出异常。