一个将阿拉伯数字转换成中文大写的好算法

大写|算法|中文|转换

//加到类的定义部分
private static string[] cstr={"零","壹","贰","叁","肆", "伍", "陆","柒","捌","玖"};
private static string[] wstr={"","","拾","佰","仟","萬","拾","佰","仟","億","拾","佰","仟"};
//数字必须在12位整数以内的字符串
//调用方式如:Label1.Text=ConvertInt("数字字符串");

public string ConvertInt(string str)
{
int len=str.Length;
int i;
string tmpstr,rstr;
rstr="";
for(i=1;i<=len;i++)
{
tmpstr=str.Substring(len-i,1);
rstr=string.Concat(cstr[Int32.Parse(tmpstr)]+wstr[i],rstr);
}
rstr=rstr.Replace("拾零","拾");
rstr=rstr.Replace("零拾","零");
rstr=rstr.Replace("零佰","零");
rstr=rstr.Replace("零仟","零");
rstr=rstr.Replace("零萬","萬");
for(i=1;i<=6;i++)
rstr=rstr.Replace("零零","零");
rstr=rstr.Replace("零萬","零");
rstr=rstr.Replace("零億","億");
rstr=rstr.Replace("零零","零");
rstr+="圆整";
return rstr;
}

时间: 2025-01-25 12:09:06

一个将阿拉伯数字转换成中文大写的好算法的相关文章

一个将阿拉伯数字转换成中文大写的最简单算法

大写|算法|中文|转换 代码如下: //加到类的定义部分private static string[] cstr={"零","壹","贰","叁","肆", "伍", "陆","柒","捌","玖"};private static string[] wstr={"",""

excel中将阿拉伯数字转换成中文大写数字的函数方式

  在a1单元格输入一个数值 鼠标左键点一下b1单元格,然后输入=numberstring(),然后将鼠标左键点击一下括号内部 鼠标左键点击一下a1单元格 然后输入一个半角逗号,一个1,然后点击绿色的对号 函数的返回值变成了一个很大的用一二三形式显示的中文数字 鼠标点击函数第二个参数1前面的位置,然后向后拖动选中1,此时1的背景是黑色,最后键盘输入2 输入一个2之后然后点击绿色的对号完成输入 此时函数的返回值是大写的很大的一个数字 如果第三个参数是3,函数将返回数码而不是一个很大的数字,数码是大

求代码 代码-求用C++写任意整数转换成中文大写的代码

问题描述 求用C++写任意整数转换成中文大写的代码 我正在学习C++,才开始不懂怎么写,还没有理清头绪,希望有人能帮我写一下,我好有一个指路灯,谢谢 解决方案 CString ChineseCapitalMoney(double Num) { CString szChMoney,szNum; int iLen, iNum, iAddZero=0; TCHAR* hzUnit[18]={_T("分"),_T("角"),_T("元"),_T(&quo

C#实现的【阿拉伯数字转换成中文大写金额】代码

大写|金额|中文|转换 以下C#代码实现了将阿拉伯数字转换成中文大写金额的功能,并Visual Studio.NET 2003 下调试基本通过(未经严格测试,希望各位发现错误后与作者联系fanz2000@sohu.com,或直接在csdn上回帖告知). 代码的主调函数为ConvertSum,它的参数是string类型的数字字符串.在ASP.NET中调用方式如下:Label1.Text=ConvertSum("数字字符串"); 其代码如下: //作者:fanz2000 //Email:f

Excel中数字如何自动转换成中文大写数字

平时工作中输入金额时常常需要转成中文大写数字,但输入起来比较麻烦,那么是否可以将数字直接转换成中文大写呢?本教程中就为大家介绍在excel中如何将数字自动转换成中文大写数字. 第一步:打开Excel工作表,鼠标右键单击选中需要显示中文大写数字的单元格(可以批量拉选单元格),在弹出的快捷菜单中选择"设置单元格格式". 第二步:在弹出的对话框中选择"数字"选项卡,并且在"分类"列表中选择"特殊",在类型框中选择"中文大写

javascript-JavaScript 时间数字如何转换成中文大写

问题描述 JavaScript 时间数字如何转换成中文大写 例如, 把2012年12月31日转换成二〇一二年十二月三十一日.在线等! 急急急!!!!! 解决方案 function numToCN(s) { var sCN = '〇一二三四五六七八九'; function getCN(s) { var c = s.charAt(0) cCN = sCN.charAt(c); return s.length == 1 ? cCN : (c == '1' ? '' : cCN) + '十' + sCN

python中将阿拉伯数字转换成中文的实现代码_python

复制代码 代码如下: #!/usr/bin/python #-*- encoding: utf-8 -*- import types class NotIntegerError(Exception): pass class OutOfRangeError(Exception): pass _MAPPING = (u'零', u'一', u'二', u'三', u'四', u'五', u'六', u'七', u'八', u'九', ) _P0 = (u'', u'十', u'百', u'千', )

将天文数字转换成中文大写

思路非常简单,且没有任何位数限制! 例如: 401,0103,1013 读作: 肆佰零壹[亿]零壹佰零叁[万]壹仟零壹拾叁 咱们先按每四位一组 从左到右,高位到低位分别"大声朗读"一下: "肆佰零壹" 单位是: "[亿]" "壹佰零叁" 单位是: "[万]" "壹仟零壹拾叁" 单位是 "" (相当于没有单位) 很容易发现,每四位: 只有 千位,百位,十位,个位 这四种

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

复制代码 代码如下:  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="