《C#阿拉伯数字金额转换为中文大写金额》由会员分享,可在线阅读,更多相关《C#阿拉伯数字金额转换为中文大写金额(3页珍藏版)》请在金锄头文库上搜索。
1、C# 阿拉伯数字金额转换为中文大写金额昨日订单管理软件的客户要求打印出来的报表中的金额要中文的大写,而不是阿拉伯数字。今天在网上查了一下代码,大多都看不懂,而且有点复杂,无奈之下自己写了一个简单的将阿拉伯数字的金额转换成中文大写金额的方法。仅支持到万亿级别的金额,代码内容如下:private string moneyUnit = 分, 角, 圆, 拾, 佰, 仟, 萬, 拾, 佰, 仟, 亿, 拾, 佰, 仟, 萬 ;/ / 金额阿拉伯数字转换为大写(入口)/ / / public string GetDaXieMoney(double value)string result = ; /定义结
2、果int unitPointer = 0; /定义单位位置/格式化金额字符串string valueStr = value.ToString(#0.00);/判断是否超出万亿的限制if (valueStr.Length 16)throw new Exception(不支持超过万亿级别的数字!);/遍历字符串,获取金额大写for (int i = valueStr.Length - 1; i = 0; i-)/判断是否小数点if (valueStri != .)/后推方式增加内容result = GetDaXie(valueStri) + moneyUnitunitPointer + resul
3、t;/设置单位位置unitPointer+; return result;/ / 获取大写信息/ / / private string GetDaXie(char c)string result = ;switch (c)case 0:result = 零;break;case 1:result = 壹;break;case 2:result = 贰;break;case 3:result = 叁;break;case 4:result = 肆;break;case 5:result = 伍;break;case 6:result = 陆;break;case 7:result = 柒;break;case 8:result = 捌;break;case 9:result = 玖;break; return result;签名:杨伟铭