ehxz 发表于 2011-9-6 17:08:55

真正完整无误的pb11.5 数字(可小数)转人民币中文函数

/////////////////////////////////////////////////// oukichikou 原创
//////////////////////////////////////////////////真正完整无误的pb11.5 数字(可小数)转人民币中文函数
////////////////////////////////////////////////// string as g_uf_chinese(double alb)
string i_number[],i_z,i_salb,i_a,i_b
int i_len,i
string i_rmb
int i_bz = 0 ,i_bz1 = 0//零检测
i_salb=string(alb,"0.00")
i_len=len(i_salb)
i_a = '零壹贰叁肆伍陆柒捌玖'
i_b = '零分角元拾佰千万拾百千亿拾百千'
////////////////////////////////////////////////////////小数整理
if dec(mid(i_salb,i_len,1) ) =0 and dec(mid(i_salb,i_len - 1,1)) = 0 then
i_z= "整"
i_number = ""
i_number = ""
else
i_z =""
i_number= mid(i_salb,i_len,1) //分
i_number = mid(i_salb,i_len - 1,1)//角
if integer(i_number) > 0 then
i_number = mid(i_a,integer( i_number)+1,1)+mid(i_b,2,1)
else
i_number = ""
end if
if integer(i_number) > 0 then
i_number = mid(i_a,integer( i_number)+1,1)+mid(i_b,3,1)
else
i_number = mid(i_b,1,1)
end if
end if
i_rmb = i_z +i_number+i_number
///////////////////////////////////////////////////////////////////整数部分
for i=3 to i_len - 1
i_number = mid(i_salb,i_len - i,1)
if integer(i_number) = 0 then
if i = 3 then
i_number ="元"
i_bz1 =1
else
i_number ="零"
i_bz=i_bz + 1
end if
else
i_bz = 0
i_bz1 = 0
i_number = mid(i_a,integer( i_number)+1,1)+mid(i_b,i+1,1)
end if

if i= 7 and i_number = "零" then //解决10万问题
i_number = "万"
i_bz1=0
i_bz=1
end if

if i= 11 and i_number = "零" then //解决10亿问题
i_number = "亿"
i_bz1=0
i_bz=1
end if

////////////////////////////////////////零处理: 元后没零,没有多零
if ( i_bz1 = 1 and i_bz > 0) or i_bz > 1 then
i_number = ""
end if
if i_number <> "" then

if i = 11 then /////////////////////// 解决亿万问题
if i_number = "" and i_number = "" and i_number = "" and i_number = "万" then
i_rmb = right(i_rmb ,len(i_rmb) - 1)
end if
end if

i_rmb= i_number + i_rmb
end if
next
return i_rmb

lbcast 发表于 2011-10-19 11:00:52

万亿显不出来。

allenxie 发表于 2015-2-3 17:39:49

先收藏这个,我上次做了一个发票打印的。

ehxz 发表于 2015-2-3 20:05:23

allenxie 发表于 2015-2-3 17:39
先收藏这个,我上次做了一个发票打印的。

好东西是用来分享的。
页: [1]
查看完整版本: 真正完整无误的pb11.5 数字(可小数)转人民币中文函数

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com