下面那段代码是看了某位大牛写的人民币转大写Java代码改了一下变成C#的,没地方存起来就放在这里留档。 public String toRMB(double money) { char[] s1 = { '零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖' }; char[] s4 = { '分', '角', '元', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟', '万' }; char[] str = Math.Round(money * 100).ToString().ToCharArray(); String result = ""; for (int i = 0; i < str.Length; i++) { int n = str[str.Length - 1 - i] - '0'; result = s1[n] + "" + s4[i] + result; } result = result.Replace("零仟", "零"); result = result.Replace("零佰", "零"); result = result.Replace("零拾", "零"); result = result.Replace("零亿", "亿"); result = result.Replace("零万", "万"); result = result.Replace("零元", "元"); result = result.Replace("零角", "零"); result = result.Replace("零分", "零"); result = result.Replace("零零", "零"); result = result.Replace("零亿", "亿"); result = result.Replace("零零", "零"); result = result.Replace("零万", "万"); result = result.Replace("零零", "零"); result = result.Replace("零元", "元"); result = result.Replace("亿万", "亿"); result = Regex.Replace(result, "零$", ""); result = Regex.Replace(result, "元$", "元整"); return result; }