c# 阿拉伯数字转成中文

调用方法:
 public string ConvertToChineseNumber(string old)
        {
            Chinese ch = new Chinese();
            long num = Convert.ToInt64(old);
            string re = ch.returnResult(num);
            if (re.StartsWith("壹拾"))
            {
                re = re.Substring(1, re.Length - 1);
            }

            return (re);
        }
完整代码
using System;
using System.Collections.Generic;
using System.Text;

namespace Public
{
    class Chinese
    {
        public string returnResult(long num)
        {
            string numStr = num.ToString();
            if (numStr.Length > 8 & numStr.Length < 16)
            {
                string[] firstSplit = new string[2];
                firstSplit[0] = numStr.Substring(0, numStr.Length - 8);
                firstSplit[1] = numStr.Substring(numStr.Length - 8, 8);
                string result1 = getString(firstSplit[0]) + "億";
                string result2 = getString(firstSplit[1]);

                return result1 + result2;
            }
            else
            {
                return getString(numStr);
            }
        }

        public string getString(string str)
        {
            if (str.Length > 4)
            {
                string[] secondSplit = new string[2];
                secondSplit[0] = str.Substring(0, str.Length - 4);
                secondSplit[1] = str.Substring(str.Length - 4, 4);
                string result1 = getRe(secondSplit[0]);
                string result2 = getRe(secondSplit[1]);
                if (!secondSplit[0].Equals("0000"))
                {
                    result1 += "萬";
                }

                return result1 + result2;
            }
            else
            {
                return getRe(str);

            }
        }

        int[] value = { 1000, 100, 10 };
        public string getRe(string doWith)
        {
            char[] number = doWith.ToCharArray();
            int length = number.Length;
            string re = "";

            for (int i = 0; i < length; i++)
            {
                switch (number[i])
                {
                    case ‘0‘:

                        if (re.EndsWith("零"))
                        {
                            re += "";
                        }
                        else
                        {
                            re += "零";
                        }

                        break;
                    case ‘1‘:
                        re += "壹";
                        break;
                    case ‘2‘:
                        re += "贰";
                        break;
                    case ‘3‘:
                        re += "叁";
                        break;
                    case ‘4‘:
                        re += "肆";
                        break;
                    case ‘5‘:
                        re += "伍";
                        break;
                    case ‘6‘:
                        re += "陆";
                        break;
                    case ‘7‘:
                        re += "柒";
                        break;
                    case ‘8‘:
                        re += "捌";
                        break;
                    case ‘9‘:
                        re += "玖";
                        break;
                }

                int index = (int)Math.Pow(10, length - i - 1);
                if (number[i].ToString() == "0")
                {
                    index = -1;
                }
                switch (index)
                {
                    case 1000:
                        re += "仟";
                        break;
                    case 100:
                        re += "佰";
                        break;
                    case 10:
                        re += "拾";
                        break;
                }
            }

            if (re.EndsWith("零"))
            {
                re = re.Substring(0, re.Length - 1);
            }
            return re;

        }
    }
}

http://files.cnblogs.com/files/louby/1279894919.rar

时间: 2024-11-08 22:58:37

c# 阿拉伯数字转成中文的相关文章

阿拉伯数字转换成中文大写

package Demo;public class Money{ public static void main(String args[]) { Money mon = new Money(); System.out.println(mon.change("124")); } //把"1"转化成1时用下标找TOBIG[1]就是对应的 private static final String[] TOBIG = new String[] { "零"

oracle改进之将阿拉伯数字转换成中文数字

本博客是自己在学习和工作途中的积累与总结. 将阿拉伯数字转换成中文汉字,方法自定义函数 create or replace function formate(val in number) return varchar2 is res varchar2(6); begin if val=1 then res:='一'; elsif val=2 then res:='二'; elsif val=3 then res:='三'; elsif val=4 then res:='四'; elsif val

JS实现金额转换(将输入的阿拉伯数字)转换成中文

// 数字转化为中文大写 number_chinese:function (str) { var num = parseInt(str); var strOutput = "", strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分'; num += "00"; var intPos = num.indexOf('.'); if (intPos >= 0){ num = num.substring(0, intPos) + num.substr(intPos +

阿拉伯数字转换成中文大写,中文货币的表达方式 python

最近在qq群经常看到一个题目,网上查找资料发现,有人实现了一半内容,都是在处理0的问题上卡住了,自己就尝试用刚开始学习的python写了一下.python处理这个问题还是比较方便. 题目: 代码: #!/usr/bin/env python # -*- coding: utf-8 -*- #转换 import re chd = {' ':'m','0':'零','1':'壹','2':'贰','3':'叁','4':'肆','5':'伍','6':'陆','7':'柒','8':'捌','9':

阿拉伯数字转成中文数字 (支持1~9999)

1 <!doctype html> 2 <html> 3 <head> 4 <title>xxx</title> 5 </head> 6 <body> 7 <input id="test" type="text"> 8 <div id="display"></div> 9 <script> 10 //支持到1~999

将阿拉伯数字转换成中文的php函数

function toChinaseNum($num){ $char = array("零","一","二","三","四","五","六","七","八","九"); $dw = array("","十","百","千",&qu

Java金额转换_阿拉伯数字转换成中国传统形式

这个题目我在网上看到有好多种做法,我自己也想出了一种做法:不过因为时间不够,只能转换整数,没把角分弄进去. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /* * 思路: * 1.定义两张表,存储中文数字和货币单位. * 2.键盘录入使用IO流的BufferedReader进行接收键盘录入. * 3.把录入的阿拉伯数字弄成字符数组,把每个数字所在位置的角标对

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

具体代码如下: /// <summary> /// 金额转换成中文大写金额 /// </summary> /// <param name="LowerMoney">eg:10.74</param> /// <returns></returns> public static string MoneyToUpper(string LowerMoney) { string functionReturnValue = nu

如何可以将PDF文件在线翻译成中文?

有时心血来潮,会在网上搜索一些专业的影评.杂志等资料,像这些资料格式PDF的多一些,而且有时还会看到纯英文版的,这样想利用起来,就必须要使用一些工具的帮助,就可以轻松的完成翻译的任务,让我们使用起来更轻松.不用下载,直接在网页上面就可以完成,非常的方便,一起来学习一下吧.     在线PDF翻译,可以直接把PDF.Word翻译成中文.英文.繁体中文等多国语言的文档.用户可自定义目标语言,翻译后的文档可以精确保留原文件的所有页面元素和排版.用户可以在短时间之内下载到转换之后的文件.只要用户可以连接