zoukankan      html  css  js  c++  java
  • C#:转换成中文数字

           

    代码
    /// <summary>
    /// 转换成中文数字
    /// </summary>
    /// <param name="number"></param>
    /// <returns></returns>
    public static string ToChineseNum(double number)
    {
    string numList = "零壹贰叁肆伍陆柒捌玖";
    string rmbList = "分角元拾佰仟万拾佰仟亿拾佰仟万";
    string tempOutString = null;


    if (number < 0)
    {
    number
    = -number;
    tempOutString
    = "";
    }

    if (number > 9999999999999.99)
    return "超出范围的人民币值";

    //将小数转化为整数字符串
    string tempNumberString = Convert.ToInt64(number * 100).ToString();
    int tempNmberLength = tempNumberString.Length;
    int i = 0;
    while (i < tempNmberLength)
    {
    int oneNumber = Int32.Parse(tempNumberString.Substring(i, 1));
    string oneNumberChar = numList.Substring(oneNumber, 1);
    string oneNumberUnit = rmbList.Substring(tempNmberLength - i - 1, 1);
    if (oneNumberChar != "")
    tempOutString
    += oneNumberChar + oneNumberUnit;
    else
    {
    if (oneNumberUnit == "亿" || oneNumberUnit == "" || oneNumberUnit == "" || oneNumberUnit == "")
    {
    while (tempOutString.EndsWith(""))
    {
    tempOutString
    = tempOutString.Substring(0, tempOutString.Length - 1);
    }
    }
    if (oneNumberUnit == "亿" || (oneNumberUnit == "" && !tempOutString.EndsWith("亿")) || oneNumberUnit == "")
    {
    tempOutString
    += oneNumberUnit;
    }
    else
    {
    try
    {
    bool tempEnd = tempOutString.EndsWith("亿");
    bool zeroEnd = tempOutString.EndsWith("");
    if (tempOutString.Length > 1)
    {
    bool zeroStart = tempOutString.Substring(tempOutString.Length - 2, 2).StartsWith("");
    if (!zeroEnd && (zeroStart || !tempEnd))
    tempOutString
    += oneNumberChar;
    }
    else
    {
    if (!zeroEnd && !tempEnd)
    tempOutString
    += oneNumberChar;
    }
    }
    catch
    {
    return "零元零分";
    }
    }
    }
    i
    += 1;
    }

    while (tempOutString.EndsWith(""))
    {
    tempOutString
    = tempOutString.Substring(0, tempOutString.Length - 1);
    }

    if (tempOutString.EndsWith("") || tempOutString.EndsWith(""))
    {
    tempOutString
    = tempOutString + "";
    }

    return tempOutString;
    }

    作者:罗敏贵
    邮箱:minguiluo@163.com
    QQ群:34178394 建群 主要是寻找志同道合的人士一起学习和讨论自己的所学所思
    出处:http://luomingui.cnblogs.com/
    说明:专注于微软平台项目架构、熟悉设计模式、架构设计、敏捷个人和项目管理。现主要从事WinForm、ASP.NET、等方面的项目开发、架构、管理工作。文章为作者平时里的思考和练习,可能有不当之处,请博客园的园友们多提宝贵意见。
    知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

  • 相关阅读:
    Linux基础(Ubuntu16.04):安装vim及配置
    Ubuntu16.04 安装ROS及其IDE
    python格式转换的记录
    python爬虫selenium相关
    【LAMP】搭建Web网站过程中的记录【Ubuntu18.04+Apache2.4+PHP7.2+MySQL5.7】
    【疯狂挖坑】linux服务器尝试中的问题(nohup等)
    逻辑回归与全连接神经网络联系的简单理解记录
    Unity3d开发中遇到的问题记录
    python中numpy库的一些使用
    Deep Learning论文翻译(Nature Deep Review)
  • 原文地址:https://www.cnblogs.com/luomingui/p/1782691.html
Copyright © 2011-2022 走看看