热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> .Net编程>>正文内容

数字转人民币大写的方法

发布时间:2009年08月16日点击数: 未知

 

private   string   GetNumToUpper(decimal   Money)  
                {  
                        
                        string   NumList   =   "";   string   RmbList   =   "";  
                        int   NumLen   =   0;   int   NumChar   =   0;  
                        string   N1   =   "",   N2   =   "";  
                        decimal   Mnu   =   0;  
                        int   I   =   0;  
                        string   numStr   =   "";string   Change   =   "";  

                        Mnu   =   Money;  
                        if   (Money   >   0)  
                        {  
                                Money   =   Convert.ToDecimal(Money.ToString("#.00"));  
                        }
  
                        else  
                        {  
                                Money   =   Convert.ToDecimal(Money.ToString("#.00"))   *   -1;  
                        }
  

                        NumList   =   "零壹贰叁肆伍陆柒捌玖";  
                        RmbList   =   "分角元拾佰仟万拾佰仟亿拾佰仟万";  

                        if   (Money   >   9999999999999.99M)  
                        {  
                                return   "-------";     //超出范围的人民币值,无法显示!;  
                        }
  

                        numStr   =   Convert.ToString(Convert.ToDecimal(Money   *   100).ToString("#"));  
                        NumLen   =   numStr.Length;  

                        I   =   0;  
                        while   (I   <=   NumLen   -1)  
                        {  
                                NumChar   =   Convert.ToInt32(numStr.Substring(I,   1));  
                                N1   =   NumList.Substring(NumChar,   1);  
                                N2   =   RmbList.Substring(NumLen   -   I   -1,   1);  
                                if   (N1   !=   "零")  
                                {  
                                        Change   +=   N1   +   N2;  
                                }
  
                                else  
                                {  
                                        if   (N2   ==   "亿"   ¦ ¦   N2   ==   "万"   ¦ ¦   N2   ==   "元"   ¦ ¦   N1   ==   "零")  
                                        {  
                                                while   (Change.Substring(Change.Length   -   1,   1)   ==   "零")  
                                                {  
                                                        Change   =   Change.Substring(0,   Change.Length   -   1);  
                                                }
  
                                        }
  
                                        if   (N2   ==   "亿"   ¦ ¦   (N2   ==   "万"   &&   Change.Substring(Change.Length   -   1,   1)   !=   "亿")   ¦ ¦   N2   ==   "元")  
                                        {  
                                                Change   +=   N2;  
                                        }
  
                                        else  
                                        {  
                                                if   (Change.Substring(Change.Length   -   2,   2).Substring(0,   1)   ==   "零"   ¦ ¦   Change.Substring(Change.Length   -   1,   1)   !=   "亿")  
                                                {  
                                                        Change   +=   N1;  
                                                }
  
                                        }
  
                                }
  
                                I++;  
                        }
  
                        if   (Change.Length   >   1)  
                        {  
                                while   (Change.Substring(Change.Length   -   1,   1)   ==   "零")  
                                {  
                                        Change   =   Change.Substring(0,   Change.Length   -   1);  
                                }
  
                                if   (Change.Substring(Change.Length   -   1,   1)   ==   "元"   ¦ ¦   Change.Substring(Change.Length   -   1,   1)   ==   "角")  
                                {  
                                        Change   +=   "整";  
                                }
  
                        }
  
                        
                                              
                        if   (Mnu   >   0)  
                        {  
                                return   Change;  
                        }
  
                        else   if   (Mnu   <   0)  
                        {  
                                return   "负"   +   Change;  
                        }
  
                        else  
                        {  
                                return   "零元整";  
                        }
    
                }

 

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作