String.Format("{0:###-###-####}", customer.ContactHome); //NOT working (9891205789)
但是
String.Format("{0:###-###-####}", Convert.ToInt64(customer.ContactHome)); //Works fine (989-120-5789)
但由于某些原因,我不想将电话号码强制转换。那么我该如何在不强制转换的情况下格式化电话号码?
String.Format("{0:###-###-####}", customer.ContactHome); //NOT working (9891205789)
但是
String.Format("{0:###-###-####}", Convert.ToInt64(customer.ContactHome)); //Works fine (989-120-5789)
但由于某些原因,我不想将电话号码强制转换。那么我该如何在不强制转换的情况下格式化电话号码?
Regex.Replace(customer.ContactHome, "(\d\d\d)(\d\d\d)(\d\d\d\d)", "$1-$2-$3");
或者
customer.ContactHome.Substring(0,3) + "-" +
customer.ContactHome.Substring(3,3) + "-" +
customer.ContactHome.Substring(6,4);
customer.ContactHome
使用数字格式化("{0:###-###-####}"
),这就是为什么它无法工作的原因。customer.ContactHome
是一个string
,它将不会使用数字格式进行格式化,因为它已经是一个字符串,而格式字符串期望一个数字。