金额:数字转汉字
来源:互联网 发布:银客网网络理财 编辑:程序博客网 时间:2024/05/20 00:14
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; }
0 0
- 金额:数字转汉字
- 数字转汉字大写金额
- js 数字金额转汉字
- 数字金额转换汉字金额
- 数字金额转换汉字金额
- 数字金额转为汉字金额
- php 金额小写数字转大写汉字
- 4gl数字金额转大写汉字金额
- 把数字金额转化为汉字金额
- 数字金额转化为汉字大写金额
- 数字金额转换成汉字
- 数字转化为汉字金额
- 数字金额转换为汉字形式
- JS数字金额转成大写汉字
- C#数字金额转成大写汉字
- 将数字金额转化为汉字大写
- 分享函数-数字转为汉字金额
- 实用函数-php数字转为汉字金额
- OSGEarth绘制Geometry:画线(一)
- JAVA_HOME path classpath
- #100 Same Tree
- C#中Sql DataAdapter的使用
- Jquery easyUI的核心包导入Myeclipse报错
- 金额:数字转汉字
- Genesis-3D新手入门教程集锦
- java面试题集锦
- php断点调试的几种方法讨论
- 大转盘抽奖代码 jquery
- Java异常体系及注意事项
- 在Windows上安装Python
- 888
- 安装VC6.0