惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
云风的 BLOG
云风的 BLOG
Google DeepMind News
Google DeepMind News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
爱范儿
爱范儿
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
博客园 - 聂微东
月光博客
月光博客
雷峰网
雷峰网
L
LangChain Blog
Stack Overflow Blog
Stack Overflow Blog
B
Blog RSS Feed
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
C
Check Point Blog
N
Netflix TechBlog - Medium
罗磊的独立博客
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Full Disclosure
Security Archives - TechRepublic
Security Archives - TechRepublic
V
Vulnerabilities – Threatpost
H
Help Net Security
博客园 - 【当耐特】
博客园_首页
Microsoft Security Blog
Microsoft Security Blog
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
L
Lohrmann on Cybersecurity
C
Cybersecurity and Infrastructure Security Agency CISA
P
Privacy International News Feed
Blog — PlanetScale
Blog — PlanetScale
C
CERT Recently Published Vulnerability Notes
P
Privacy & Cybersecurity Law Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Cisco Talos Blog
Cisco Talos Blog
K
Kaspersky official blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Cyberwarzone
Cyberwarzone
S
Schneier on Security
S
SegmentFault 最新的问题
C
Cyber Attacks, Cyber Crime and Cyber Security
S
Securelist

博客园 - 古道飘零客

Easyui combogrid添加toolbar SQL导出到Excel 存储过程 [WPF]DataGrid行前景色根据单元格编辑值变色 [转]系统性能调优吐血总结分享 [转]C#读取CSV,Excel,Txt文件,删除文件,拷贝文件 [转]C# 文件操作 全收录 追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件.... JS四舍五入BUG解决 IIRF(Ionics Isapi Rewrite Filt er)实现在IIS 5/6上重写Url Repeater控件实现左侧快捷菜单 - 古道飘零客 - 博客园 JS和CS互访(非常经典) [转]IList及泛型集合类转换DataTable - 古道飘零客 - 博客园 关于sqlserver2005中的bit数据类型 URL、Session、Cookies、Server.Transfer、Application和跨页面传送详解 sql server 2005 安装提示COM+ 和性能监视器计数器要求错误 oracle数据分组排名次 [转cnblogs]网页静态 js如何判断小数点后有几位? - 古道飘零客 - 博客园 怎样读取本地Excel数据,并保存到时服务器 - 古道飘零客 - 博客园 C#项目打包,并自动安装SQL数据库 - 古道飘零客 - 博客园
C#小写转大写 - 古道飘零客 - 博客园
古道飘零客 · 2009-08-18 · via 博客园 - 古道飘零客

#region 小写转大写
    private string GetNumToUpper(decimal Money)
    {        
        string NumList = "";  
        string RmbList = "";
        int NumLen = 0;  
        int NumChar = 0;
        string N1 = "";
        string 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 "零元整";
            }
        }
    }
    #endregion