/** */
/** * 将数字字符串转换成中文形式 * * @param s * 数字字符串 * @return 相应的中文形式字符串 */
public
static
String ConvertCharge(String s)
...
{ StringBuffer retStrBuf = new StringBuffer(); String num[] = ...{ "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" }; String unit[] = ...{ "亿", "拾", "佰", "仟", "万", "拾", "佰", "仟" }; int dot = 0; // 小数点位置 int ivalue = 0; int len = 0; if (s == null || s.length() <= 0) ...{ return num[0]; } dot = s.indexOf("."); if (dot == -1) ...{ String tmpStr = s; len = tmpStr.length(); int i = 0; for (i = 0; i < len - 1; i++) ...{ ivalue = Integer.parseInt(tmpStr.substring(i, i + 1)); retStrBuf.append(num[ivalue]).append(unit[(len - i - 1) % 8]); } ivalue = Integer.parseInt(String .valueOf(tmpStr.substring(i, i + 1))); retStrBuf.append(num[ivalue]); } else ...{ String tmpStr1 = s.substring(0, dot); len = tmpStr1.length(); int i = 0; for (i = 0; i < len - 1; i++) ...{ ivalue = Integer.parseInt(tmpStr1.substring(i, i + 1)); retStrBuf.append(num[ivalue]).append(unit[(len - i - 1) % 8]); } ivalue = Integer.parseInt(tmpStr1.substring(i, i + 1)); retStrBuf.append(num[ivalue]); if (dot < s.length() - 1) ...{ retStrBuf.append("点"); String tmpStr2 = s.substring(dot + 1); len = tmpStr2.length(); for (i = 0; i < len; i++) ...{ ivalue = Integer.parseInt(tmpStr2.substring(i, i + 1)); retStrBuf.append(num[ivalue]); } } } retStrBuf.append("元整"); return retStrBuf.toString(); }
转载请注明原文地址: https://ibbs.8miu.com/read-15054.html