2017년 10월 14일 토요일
java 숫자를 한글로 변환 해주는 메소드
java 숫자를 한글로 변환 해주는 메소드
그런데 이것은 약간 문제가 있네요
몇백억 넘어가면 억만 으로 표시하는데 이것을 수정해야 할듯 합니다.
public String convertHangul(String money){
String[] han1 = {"","일","이","삼","사","오","육","칠","팔","구"};
String[] han2 = {"","십","백","천"};
String[] han3 = {"","만","억","조","경"};
StringBuffer result = new StringBuffer();
int len = money.length();
for(int i=len-1; i>=0; i--){
result.append(han1[Integer.parseInt(money.substring(len-i-1, len-i))]);
if(Integer.parseInt(money.substring(len-i-1, len-i)) > 0)
result.append(han2[i%4]);
if(i%4 == 0)
result.append(han3[i/4]);
}
return result.toString();
}
===========================================================
숫자를 한글로 변환
public static long hangulToNum(String input){
long result = 0;
long tmpResult =0;
long num = 0;
final StringNUMBER="영일이삼사오육칠팔구";
final String UNIT= "십백천만억조";
final long[] UNIT_NUM = {
10,100,1000,10000,(long)Math.pow(10, 8),(long)Math.pow(10,12)
};
StringTokenizer st = new StringTokenizer(input,UNIT,true);//단위
while(st.hasMoreTokens()){//삼,*,*,삼,*,*
String token =st.nextToken();
//숫자인지 단위(UNIT)인지 확인한다.
int check =NUMBER.indexOf(token);//1)삼 ->3 2)십 ->-1
System.out.println("CHECK:"+check);
if(check==-1){//단위인경우
if("만억조".indexOf(token)==-1){//만억조가 아니면 3)만
tmpResult+=(num!=0?num:1)*UNIT_NUM[UNIT.indexOf(token)];//num=30 * 10000
}else{
//만,억,조 경우 ->result
tmpResult +=num;
result +=(tmpResult!=0?tmpResult:1)*UNIT_NUM[UNIT.indexOf(token)];
tmpResult = 0;
}
num = 0;
}else{//숫자
num = check;
}
}
System.out.println("result:"+result);
System.out.println("tmpResult:"+tmpResult);
System.out.println("num:"+num);
return result +tmpResult + num;
}
피드 구독하기:
댓글 (Atom)
-
Rosewell 사건의 유일한 생존자인 외계인 Airl에 관한 이야기를 전해 드리고자 합니다. 이책은 우리에게 정말 귀한 정보 와 통찰력을 주며, 왜 이렇게 삶이란 것이 깊은 고뇌를 동반하는 것인 과정인지 근본적인 대답을 해주며, 죽는다는 것이 어렵...
-
아치 리눅스 한글 간단 사용기 한글 입력기로 ibus 사용 하기로 한다. nabi 도 좋긴 한데 구글 크롬과 심각한 버그로 쓰기 힘든 상태 이므로 nabi 는 패스 하기로 아이뻐스 설치 pacman -S ibus ibus-hangul ...
-
이번에는 엑셀(Excel)의 고급기능 중의 하나인 매크로(Macro)에 대해 알아보겠습니다. 매크로는 엑셀에서 꼭 필요한 것은 아니지만 좀 더 편안한 작업을 위해 필요한 기능입니다. 반복적으로 자주 사용하는 작업들을 매번 수행하자면 정말 번거롭기...
댓글 없음:
댓글 쓰기