String num = " 零壹贰叁肆伍陆柒捌玖 " ;
String dw = " 圆拾佰仟万亿 " ;
String m = " 30020.23 " ;
String mm[] = null ;
mm = m.split( " /. " );
String money = mm[ 0 ];
String result = num.charAt(Integer.parseInt( "" + mm[ 1 ].charAt( 0 ))) + " 角 " +
num.charAt(Integer.parseInt( "" + mm[ 1 ].charAt( 1 ))) + " 分 " ;
for ( int i = 0 ; i < money.length(); i ++ ) ... {
String str = "";
int n = Integer.parseInt(money.substring(money.length() - i - 1,
money.length() - i));
str = str + num.charAt(n);
if (i == 0) ...{
str = str + dw.charAt(i);
}
else if ( (i + 4) % 8 == 0) ...{
str = str + dw.charAt(4);
}
else if (i % 8 == 0) ...{
str = str + dw.charAt(5);
}
else ...{
str = str + dw.charAt(i % 4);
}
result = str + result;
}
result = result.replaceAll( " 零([^亿万圆]) " , " 零 " );
result = result.replaceAll( " 亿零+万 " , " 亿零 " );
result = result.replaceAll( " 零+ " , " 零 " );
result = result.replaceAll( " 零([亿万圆]) " , " $1 " );
result = result.replaceAll( " ^壹拾 " , " 拾 " );
System.out.println(result);