Как отформатировать телефонный номер в виде строки в Java?

Я хранил телефонные номера так долго, и хотел бы просто добавлять дефисы при печати номера телефона в виде строки.

Я пробовал использовать DecimalFormat , но это не помогло как дефис. Вероятно, потому что он предназначен для форматирования десятичных чисел, а не длинных.

long phoneFmt = 123456789L;
DecimalFormat phoneFmt = new DecimalFormat("###-###-####");
System.out.println(phoneFmt.format(phoneNum)); //doesn't work as I had hoped

В идеале, я хотел бы также иметь круглые скобки для кода города.

new DecimalFormat("(###)-###-####");

Как это правильно сделать?

27
задан styfle 25 February 2011 в 07:38
поделиться