zoukankan      html  css  js  c++  java
  • 人民币小写金额转大写金额

            #region 人民币小写金额转大写金额
             /// <summary>
            /// 小写金额转大写金额
             /// </summary>
            /// <param name="Money">接收需要转换的小写金额</param>
            /// <returns>返回大写金额</returns>
            public static string ConvertMoney(Decimal Money)
            {
                //金额转换程序
                  string MoneyNum = "";//记录小写金额字符串[输入参数]
                string MoneyStr = "";//记录大写金额字符串[输出参数]
                string BNumStr = "零壹贰叁肆伍陆柒捌玖";//
                string UnitStr = "万仟佰拾亿仟佰拾万仟佰拾圆角分";//
    
                MoneyNum = ((long)(Money * 100)).ToString();
                for (int i = 0; i < MoneyNum.Length; i++)
                {
                    string DVar = "";//记录生成的单个字符(大写)
                    string UnitVar = "";//记录截取的单位
                    for (int n = 0; n < 10; n++)
                    {
                        //对比后生成单个字符(大写)
                        if (Convert.ToInt32(MoneyNum.Substring(i, 1)) == n)
                        {
                            DVar = BNumStr.Substring(n, 1);//取出单个大写字符
                            //给生成的单个大写字符加单位
                            UnitVar = UnitStr.Substring(15 - (MoneyNum.Length)).Substring(i, 1);
                            n = 10;//退出循环
                        }
                    }
                    //生成大写金额字符串
                    MoneyStr = MoneyStr + DVar + UnitVar;
                }
                //二次处理大写金额字符串
                MoneyStr = MoneyStr + "";
                while (MoneyStr.Contains("零分") || MoneyStr.Contains("零角") || MoneyStr.Contains("零佰") || MoneyStr.Contains("零仟")
                    || MoneyStr.Contains("零万") || MoneyStr.Contains("零亿") || MoneyStr.Contains("零零") || MoneyStr.Contains("零圆")
                    || MoneyStr.Contains("亿万") || MoneyStr.Contains("零整") || MoneyStr.Contains("分整"))
                {
                    MoneyStr = MoneyStr.Replace("零分", "");
                    MoneyStr = MoneyStr.Replace("零角", "");
                    MoneyStr = MoneyStr.Replace("零拾", "");
                    MoneyStr = MoneyStr.Replace("零佰", "");
                    MoneyStr = MoneyStr.Replace("零仟", "");
                    MoneyStr = MoneyStr.Replace("零万", "");
                    MoneyStr = MoneyStr.Replace("零亿", "亿");
                    MoneyStr = MoneyStr.Replace("亿万", "亿");
                    MoneyStr = MoneyStr.Replace("零零", "");
                    MoneyStr = MoneyStr.Replace("零圆", "圆零");
                    MoneyStr = MoneyStr.Replace("零整", "");
                    MoneyStr = MoneyStr.Replace("分整", "");
                }
                if (MoneyStr == "")
                {
                    MoneyStr = "零元整";
                }
                return MoneyStr;
            }
            #endregion
  • 相关阅读:
    BZOJ3562 : [SHOI2014]神奇化合物
    BZOJ3559 : [Ctsc2014]图的分割
    BZOJ3551 : [ONTAK2010]Peaks加强版
    BZOJ3542:DZY Loves March
    李洪强iOS开发之
    iOS学习之iOS沙盒(sandbox)机制和文件操作1
    iOS学习之iOS沙盒(sandbox)机制和文件操作
    stringByAppendingPathComponent和stringByAppendingString 的区别
    iOS开发:Toast for iPhone
    深度解析开发项目之 01
  • 原文地址:https://www.cnblogs.com/lusunqing/p/3150537.html
Copyright © 2011-2022 走看看