전화번호란 무엇인가요?
[지역번호] - [지역번호] - [고객 번호]
숫자를 두 개의 하이픈으로 구분하는 구조가 있습니다.
0312345678
하이픈이 없는 숫자에 하이픈을 붙이는 것은 의외로 어렵습니다.
지역번호가 2자리, 3자리, 4자리 번호일 때도 있고, 휴대폰도 3자리 숫자라 혼자서 너무 많아요.
그럴 때는 신뢰할 수 있는 곳에서 제공하는 도서관을 이용해 길게 뿌리자.
원래 구글은 라이브러리를 공개했습니다.
LibPhoneNumber
기본적으로 최신 파일을 다운로드해서 안드로이드 프로젝트의 라이브러리에 넣으면 바로 시작할 수 있습니다.
*apk를 만들 때 내보내고 싶은 라이브러리를 꼭 확인하세요.
사용법이 매우 간단합니다.
[코드 lang="java" light="true"] /** * 숫자 전화번호를 하이픈이 붙은 전화번호로 변환하세요 * @param incomingNumber * @return 하이픈이 붙은 전화번호 */ private 문자열 getFormattedPhoneNumber(문자열 incomingNumber) { PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(); try { PhoneNumber pn = phoneUtil.parse(incomingNumber, "JP"); incomingNumber = phoneUtil.format(pn, PhoneNumberFormat.NATIONAL); } catch (NumberParseException e) { Log.e("app tag","전화번호 포맷 실패", e); } incomingNumber; } 반환 incomingNumber; } [/code]
안드로이드 외에는 시도해보지 않았지만, 베어 자바로도 사용할 수 있어요... 아마도요?