金额:数字转汉字

原创 2015年07月09日 21:20:17
CString ToChineseCapitalMoney(double Num)
{
	//存在的问题:   
	//在第一个字为一第二个字为十时,不能去除最先的一,以满足习惯的读法   
	//   
	CString szChMoney,szNum;     
	int iLen,iNum,iAddZero=0;   

	TCHAR* hzUnit[18]={_T("分"),_T("角"),_T("元"),_T("拾"),_T("佰"),_T("仟"),_T("万"),_T("拾"),_T("佰"),_T("仟"),_T("亿"),_T("拾"),_T("佰"),_T("仟"),_T("万"),_T("拾"),_T("佰"),_T("仟")};   
	TCHAR* hzNum[10]={_T("零"),_T("壹"),_T("贰"),_T("叁"),_T("肆"),_T("伍"),_T("陆"),_T("柒"),_T("捌"),_T("玖")};   

	//这样可能会有数字误差,double只有15位有效数字,这里只有13 
	szNum.Format(_T("%18.0f"),Num*100);  
	szNum.TrimLeft();   
	iLen=szNum.GetLength();   

	if( iLen>15 || iLen==0 || Num<0)   
		return   _T("");   //数据错误返回   

	for(int i=0 ; i < iLen ; i++)   
	{   
		iNum=_ttoi((LPCTSTR)szNum.Mid(i,1));   
		if(iNum == 0)   
		{   
			iAddZero++;   
		}   
		else   
		{   
			if(iAddZero>0)   szChMoney+=_T("零");   
			szChMoney+=hzNum[iNum];   
			iAddZero=0;   
		}
		//该位不为0||元位||亿位||万位
		if( iNum != 0 || iLen-i==3 || iLen-i == 11 || ((iLen-i+1) % 8 == 0 && iAddZero<4))   
			szChMoney += hzUnit[iLen-i-1];
	}   

	if(szNum.Right(2) == _T("00"))
		szChMoney += _T("整");

	CString Temp = szChMoney;   
	CString Temp1 = Temp.Left(2);   
	CString Temp2 = Temp.Left(4);   
	if((Temp1 == _T("壹")) && (Temp2 == _T("壹拾")))//满足去除条件   
		szChMoney.Delete(0,2);

	return   szChMoney;  
}

c#实现的阿拉伯数字转大写汉字金额

c#实现的阿拉伯数字转大写汉字金额 c#  初学c# 请多指教  废话没有 直接上代码  //将阿拉伯数字转成大写中文          public static stri...

js 数字金额转汉字

1.html页面 文件名:index.html

阿拉伯数字金额转汉字大写

话不多说,直接上代码 语言Java 代码功能说明实现对阿拉伯数字的汉字大写转换,范围:0 - 1000亿 能够检测输入的字符内容,并给出提示信息 要点在于得到一个符合中文逻辑的结果...

面试---阿拉伯数字金额转汉字

要求将阿拉伯数字转为汉字显示出来(包含单位)几个小的注意点:1、中文字符占两个字节,所以如果用C语言实现,需要用char数组的形式保存单个汉字。2、如果数字中出现连续的零,需要把它替换为单一的零。3、...
  • will130
  • will130
  • 2015年09月22日 11:29
  • 296

4gl数字金额转大写汉字金额

首先看张效果图:注意底色部分 实现函数代码: FUNCTION F_CONV_GB(pf_money) DEFINE pf_money DECIMAL(14,2) DEFINE ll...

数字金额转换为大写汉字

  • 2008年11月23日 20:50
  • 2KB
  • 下载

JS数字金额转换为货币汉字形式

"> My JSP 'index.j

oracle 数字金额转为汉字大写

  • 2011年09月28日 17:03
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:金额:数字转汉字
举报原因:
原因补充:

(最多只允许输入30个字)