博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小写金额转中文大写金额
阅读量:5073 次
发布时间:2019-06-12

本文共 3633 字,大约阅读时间需要 12 分钟。

        private static String[] DX_Num = { " 零", " 壹", " 贰", " 叁", " 肆", " 伍", " 陆", " 柒", " 捌", " 玖" };        private static String[] DX_Yuan = { " 元", " 拾", " 佰", " 仟", " 万", " 拾", " 佰", " 仟", " 亿", " 拾", " 佰", " 仟", " 万" };        private static String[] DW_X = { " 角", " 分" };        ///         /// 金额小写转中文大写。        /// 整数支持到万亿;小数部分支持到分(超过两位将进行Banker舍入法处理)        ///         /// 需要转换的双精度浮点数        /// 
转换后的字符串
public static String NumGetStr(Double Num) { string NumStr;//整个数字字符串 string NumStr_Zh;//整数部分 string NumSr_X = "";//小数部分 string NumStr_DQ;//当前的数字字符 string NumStr_R = "";//返回的字符串 Num = Math.Round(Num, 2);//四舍五入取两位 //各种非正常情况处理 if (Num < 0) return "转换失败"; else if (Num > 9999999999999.99) return "金额过大,无法转换"; else if (Num == 0) return DX_Num[0] + DX_Yuan[0]; else { NumStr = Num.ToString(); //分开整数与小数处理 if (NumStr.IndexOf(".") != -1) { NumStr_Zh = NumStr.Substring(0, NumStr.IndexOf(".")); NumSr_X = NumStr.Substring(NumStr.IndexOf(".") + 1); } else { NumStr_Zh = NumStr; } //判断是否有整数部分 if (int.Parse(NumStr_Zh) > 0) { int len = NumStr_Zh.Length - 1; //整数部分转换 for (int a = 0; a <= len; a++) { NumStr_DQ = NumStr_Zh.Substring(a, 1); if (int.Parse(NumStr_DQ) != 0) { NumStr_R += DX_Num[int.Parse(NumStr_DQ)] + DX_Yuan[len - a]; } else { if ((len - a) == 0 || (len - a) == 4 || (len - a) == 8) NumStr_R += DX_Yuan[len - a]; if ((a + 1) <= len) { NumStr_DQ = NumStr_Zh.Substring((a + 1), 1); if (int.Parse(NumStr_DQ) == 0) continue; else NumStr_R += DX_Num[0]; } } } } //判断是否含有小数部分 if (NumSr_X != "" && int.Parse(NumSr_X) > 0) { //小数部分转换 for (int b = 0; b < NumSr_X.Length; b++) { NumStr_DQ = NumSr_X.Substring(b, 1); if (int.Parse(NumStr_DQ) != 0) NumStr_R += DX_Num[int.Parse(NumStr_DQ)] + DW_X[b]; else { if ((b + 1) < NumSr_X.Length) { NumStr_DQ = NumSr_X.Substring((b + 1), 1); if (int.Parse(NumStr_DQ) == 0) continue; } if (b != (NumSr_X.Length - 1)) NumStr_R += DX_Num[0]; } } } else { NumStr_R += "整"; } return NumStr_R; } }

 

 

转载于:https://www.cnblogs.com/ahhswyf/p/3433419.html

你可能感兴趣的文章
1.7 HelloWorld 添加视图
查看>>
设计模式-写在前面
查看>>
bat脚本学习
查看>>
asp.net应用程序脱机app_offline.htm文件
查看>>
XMind 入门教程
查看>>
ElasticSearch restful实操
查看>>
Python实现图片转文字并翻译至剪切板
查看>>
条件语句中出现多个OR的情况
查看>>
java List接口实现类
查看>>
遗忘的基础概念——并发、并行、进程、线程
查看>>
洛谷1094 纪念品分组
查看>>
php:自己设计的一个php验证码
查看>>
微信扫码支付
查看>>
[干货] 有了微信小程序,谁还学ReactNative?
查看>>
spark向量、矩阵类型
查看>>
bzoj 1177: [Apio2009]Oil
查看>>
[SETUP] .NET 5 with Linux
查看>>
amoeba + mysql 学习笔记
查看>>
163邮箱tab制作
查看>>
html模板
查看>>