86384798 2020-04-26
package cn.com.utils; public class NumToChineseUtil { /** * Java 好用的 * int 数字转中文 * @param src * @return */ public static String read(int src) { final String num[] = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"}; final String unit[] = {"", "十", "百", "千", "万", "十", "百", "千", "亿", "十", "百", "千"}; String dst = ""; int count = 0; while(src > 0) { dst = (num[src % 10] + unit[count]) + dst; src = src / 10; count++; } if(dst.startsWith("一十")) { dst = dst.substring(1); } return dst.replaceAll("零[千百十]", "零").replaceAll("零+万", "万") .replaceAll("零+亿", "亿").replaceAll("亿万", "亿零") .replaceAll("零+", "零").replaceAll("零$", ""); } }
freemarker自定义方法
<#assign numToChinese = "cn.com.aia.grouplife.utils.NumToChinese"?new() />