LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

C#金额转换成中文大写金额

admin
2021年1月29日 8:48 本文热度 2703
/// <summary> /// 金额转换成中文大写金额 /// </summary> /// <param name="LowerMoney">eg:10.74</param> /// <returns></returns> public static string MoneyToUpper(string LowerMoney) { string functionReturnValue = null; bool IsNegative = false; // 是否是负数 if (LowerMoney.Trim().Substring(0, 1) == "-") { // 是负数则先转为正数 LowerMoney = LowerMoney.Trim().Remove(0, 1); IsNegative = true; } string strLower = null; string strUpart = null; string strUpper = null; int iTemp = 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) { case 1: strUpart = strUpart + ""; break; case 2: strUpart = strUpart + ""; break; case 3: strUpart = strUpart + ""; break; case 4: strUpart = strUpart + ""; break; case 5: strUpart = strUpart + ""; break; case 6: strUpart = strUpart + ""; break; case 7: strUpart = strUpart + ""; break; case 8: strUpart = strUpart + ""; break; case 9: strUpart = strUpart + ""; break; case 10: strUpart = strUpart + ""; break; case 11: strUpart = strUpart + ""; break; case 12: strUpart = strUpart + "亿"; break; case 13: strUpart = strUpart + ""; break; case 14: strUpart = strUpart + ""; break; case 15: strUpart = strUpart + ""; break; case 16: 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 { return functionReturnValue; } }

decimal PriceSum = 32957.2654;

调用  var PriceSumChinese = MoneyToUpper(PriceSum.ToString());

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

 

正则方法

/// <summary>
/// 人民币大写转换
/// </summary>
/// <param name="number">数字</param>
/// <returns>返回人民币大写,如:壹元整</returns>
public static string ConvertToChinese(decimal number)
{
    var s = number.ToString("#L#E#D#C#K#E#D#C#J#E#D#C#I#E#D#C#H#E#D#C#G#E#D#C#F#E#D#C#.0B0A");
    var d = Regex.Replace(s, @"((?<=-|^)[^1-9]*)|((?''z''0)[0A-E]*((?=[1-9])|(?''-z''(?=[F-L\.]|$))))|((?''b''[F-L])(?''z''0)[0A-L]*((?=[1-9])|(?''-z''(?=[\.]|$))))", "${b}${z}");
    var r = Regex.Replace(d, ".", m => "负元空零壹贰叁肆伍陆柒捌玖空空空空空空空分角拾佰仟万亿兆京垓秭穰"[m.Value[0] - ''-''].ToString());
    return r;
}

该文章在 2021/1/29 8:48:31 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved