C#阿拉伯数字金额转换为中文大写金额.docxVIP

  • 2
  • 0
  • 约2.34千字
  • 约 3页
  • 2017-06-10 发布于北京
  • 举报

C#阿拉伯数字金额转换为中文大写金额.docx

C# 阿拉伯数字金额转换为中文大写金额?昨日订单管理软件的客户要求打印出来的报表中的金额要中文的大写,而不是阿拉伯数字。今天在网上查了一下代码,大多都看不懂,而且有点复杂,无奈之下自己写了一个简单的将阿拉伯数字的金额转换成中文大写金额的方法。????????仅支持到万亿级别的金额,代码内容如下:?????????private string[] moneyUnit = { 分, 角, 圆, 拾, 佰, 仟, 萬, 拾, 佰, 仟, 亿, 拾, 佰, 仟, 萬 };??????? /// summary??????? /// 金额阿拉伯数字转换为大写(入口)??????? /// /summary??????? /// param name=value/param??????? /// returns/returns??????? public stringGetDaXieMoney(double value)??????? {??????????? string result = ;???????? //←定义结果??????????? intunitPointer = 0;??????? //←定义单位位置??????????? //↓格式化金额字符串??????????? string valueStr = value.ToString(#0.00);??????????? //↓判断是否超出万亿的限制??????????? if (valueStr.Length 16)??????????? {??????????????? throw new Exception(不支持超过万亿级别的数字!);??????????? }??????????? //↓遍历字符串,获取金额大写??????????? for (inti = valueStr.Length - 1; i = 0; i--)??????????? {??????????????? //↓判断是否小数点??????????????? if (valueStr[i] != .)??????????????? {??????????????????? //↓后推方式增加内容??????????????????? result = GetDaXie(valueStr[i]) + moneyUnit[unitPointer] + result;??????????????????? //↓设置单位位置??????????????????? unitPointer++;??????????????? }??????????? }??????????? returnresult;??????? }???????? /// summary??????? /// 获取大写信息??????? /// /summary??????? /// param name=c/param??????? /// returns/returns??????? 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 = 柒;??????????????

文档评论(0)

1亿VIP精品文档

相关文档