Csharp/C#教程:C#实现金额转换成中文大写金额分享

本文实例为大家分享了C#金额转换成中文大写金额的具体代码,供大家参考,具体内容如下

///<summary> ///金额转换成中文大写金额 ///</summary> ///<paramname="LowerMoney">eg:10.74</param> ///<returns></returns> publicstaticstringMoneyToUpper(stringLowerMoney) { stringfunctionReturnValue=null; boolIsNegative=false;//是否是负数 if(LowerMoney.Trim().Substring(0,1)=="-") { //是负数则先转为正数 LowerMoney=LowerMoney.Trim().Remove(0,1); IsNegative=true; } stringstrLower=null; stringstrUpart=null; stringstrUpper=null; intiTemp=0; //保留两位小数123.489→123.49  123.4→123.4 LowerMoney=Math.Round(double.Parse(LowerMoney),2).ToString(); if(LowerMoney.IndexOf(".")>0) { if(LowerMoney.IndexOf(".")==LowerMoney.Length-2) { LowerMoney=LowerMoney+"0"; } } else { LowerMoney=LowerMoney+".00"; } strLower=LowerMoney; iTemp=1; strUpper=""; while(iTemp<=strLower.Length) { switch(strLower.Substring(strLower.Length-iTemp,1)) { case".": strUpart="圆"; break; case"0": strUpart="零"; break; case"1": strUpart="壹"; break; case"2": strUpart="贰"; break; case"3": strUpart="叁"; break; case"4": strUpart="肆"; break; case"5": strUpart="伍"; break; case"6": strUpart="陆"; break; case"7": strUpart="柒"; break; case"8": strUpart="捌"; break; case"9": strUpart="玖"; break; } switch(iTemp) { case1: strUpart=strUpart+"分"; break; case2: strUpart=strUpart+"角"; break; case3: strUpart=strUpart+""; break; case4: strUpart=strUpart+""; break; case5: strUpart=strUpart+"拾"; break; case6: strUpart=strUpart+"佰"; break; case7: strUpart=strUpart+"仟"; break; case8: strUpart=strUpart+"万"; break; case9: strUpart=strUpart+"拾"; break; case10: strUpart=strUpart+"佰"; break; case11: strUpart=strUpart+"仟"; break; case12: strUpart=strUpart+"亿"; break; case13: strUpart=strUpart+"拾"; break; case14: strUpart=strUpart+"佰"; break; case15: strUpart=strUpart+"仟"; break; case16: strUpart=strUpart+"万"; break; default: strUpart=strUpart+""; break; } strUpper=strUpart+strUpper; iTemp=iTemp+1; } strUpper=strUpper.Replace("零拾","零"); strUpper=strUpper.Replace("零佰","零"); strUpper=strUpper.Replace("零仟","零"); strUpper=strUpper.Replace("零零零","零"); strUpper=strUpper.Replace("零零","零"); strUpper=strUpper.Replace("零角零分","整"); strUpper=strUpper.Replace("零分","整"); strUpper=strUpper.Replace("零角","零"); strUpper=strUpper.Replace("零亿零万零圆","亿圆"); strUpper=strUpper.Replace("亿零万零圆","亿圆"); strUpper=strUpper.Replace("零亿零万","亿"); strUpper=strUpper.Replace("零万零圆","万圆"); strUpper=strUpper.Replace("零亿","亿"); strUpper=strUpper.Replace("零万","万"); strUpper=strUpper.Replace("零圆","圆"); strUpper=strUpper.Replace("零零","零"); //对壹圆以下的金额的处理 if(strUpper.Substring(0,1)=="圆") { strUpper=strUpper.Substring(1,strUpper.Length-1); } if(strUpper.Substring(0,1)=="零") { strUpper=strUpper.Substring(1,strUpper.Length-1); } if(strUpper.Substring(0,1)=="角") { strUpper=strUpper.Substring(1,strUpper.Length-1); } if(strUpper.Substring(0,1)=="分") { strUpper=strUpper.Substring(1,strUpper.Length-1); } if(strUpper.Substring(0,1)=="整") { strUpper="零圆整"; } functionReturnValue=strUpper; if(IsNegative==true) { return"负"+functionReturnValue; } else { returnfunctionReturnValue; } }

decimalPriceSum=32957.2654;

调用 varPriceSumChinese=MoneyToUpper(PriceSum.ToString());

结果:叁万贰仟玖佰伍拾柒圆贰角柒分

您可能感兴趣的文章:C#中利用正则表达式将人民币金额转换为大写汉字

标签: 大写金额 中文大写

C#利用VS中插件打包并发布winfrom程序

C# WPF 父控件通过使用可视化树找到子控件的示例代码

上述就是C#学习教程:C#实现金额转换成中文大写金额分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/908230.html

(0)
上一篇 2021年10月25日
下一篇 2021年10月25日

精彩推荐