注册 登录
编程论坛 ASP技术论坛

求一个数字转大写的代码。哪位仁兄提供一下啊,或者帮帮看看我这个。。

letla 发布于 2007-12-20 16:15, 944 次点击
下面这个代码网上copy过来的。。。
不知道如何使用。。。
高人指点下啊,或者另外提供一个也行。。。
先谢过大家了。。。
' Design by [url]www.[/url] '
' Copyright 2007 '
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function int2chn(n)
dim i,j,k,strlen,retval,x,y,z,str
z=array("零","壹","貳","參","肆","伍","陸","柒","捌","玖")
y=array("","十","佰","仟")
x=Array("","萬","億","萬萬億")
strlen=len(n)
str1=n
for i= 1 to strlen
j=mid(str1,i,1)
retval=retval&z(j)
if j>0 then retval=retval&y((strlen-i) mod 4)'如果大於零,加入十進位字符
retval=replace(retval,z(0)&z(0),z(0))'出現兩個零後只留一個
if ((strlen-i) mod 4)=0 and right(retval,1)=z(0) then retval=left(retval,len(retval)-1)'每四位加入進階
if ((strlen-i) mod 4)=0 then retval=retval&x(int((strlen-i)/4))'把最後的零去掉
next
int2chn=retval
end function
9 回复
#2
madpbpl2007-12-20 16:20
j=mid(str1,i,1)
上面这句好象有点问题
改成
j=mid(str1,i,i+1)
试试
#3
letla2007-12-20 16:22
我是不知道这个代码怎么用。。。
哪个变量是输数字的我都没看懂。。。
#4
letla2007-12-20 16:55
这样貌似也不行啊。。。
<%
' Design by [url]www.[/url] '
' Copyright 2007 '
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
dim n
n = rs1(15)
function int2chn(n)
dim i,j,k,strlen,retval,x,y,z,str
z=array("零","壹","貳","參","肆","伍","陸","柒","捌","玖")
y=array("","拾","佰","仟")
x=Array("","萬","億","萬萬億")
strlen=len(n)
str1=n
for i= 1 to strlen
j=mid(str1,i,1)
retval=retval&z(j)
if j>0 then retval=retval&y((strlen-i) mod 4)'如果大於零,加入十進位字符
retval=replace(retval,z(0)&z(0),z(0))'出現兩個零後只留一個
if ((strlen-i) mod 4)=0 and right(retval,1)=z(0) then retval=left(retval,len(retval)-1)'每四位加入進階
if ((strlen-i) mod 4)=0 then retval=retval&x(int((strlen-i)/4))'把最後的零去掉
next
int2chn=retval
end function
%>
<%=retval%>
#5
madpbpl2007-12-20 17:04
n = rs1(15)
上面是哪来的?
#6
letla2007-12-20 17:06
数据库里面输出的。。。
上面都能正常显示的。。。
关闭rs1写在最尾处了的。。。
#7
madpbpl2007-12-20 17:12
没看懂
#8
letla2007-12-20 17:52
set rs1=Server.CreateObject("ADODB.RECORDSET")
sql = "select sum(ZB_RS) as ZB_RSxin, "
sql = sql & "sum(ZB_BZ) as ZB_BZxin, "
sql = sql & "sum(ZB_JB) as ZB_JBxin, "
sql = sql & "sum(ZB_QQ) as ZB_QQxin, "
sql = sql & "sum(ZB_GL) as ZB_GLxin, "
sql = sql & "sum(ZB_YB) as ZB_YBxin, "
sql = sql & "sum(ZB_TX) as ZB_TXxin, "
sql = sql & "sum(ZB_WC) as ZB_WCxin, "
sql = sql & "sum(ZB_WS) as ZB_WSxin, "
sql = sql & "sum(ZB_JT) as ZB_JTxin, "
sql = sql & "sum(ZB_XJ1) as ZB_XJ1xin, "
sql = sql & "sum(ZB_EL) as ZB_ELxin, "
sql = sql & "sum(ZB_ZA) as ZB_ZAxin, "
sql = sql & "sum(ZB_FK) as ZB_FKxin, "
sql = sql & "sum(ZB_XJ2) as ZB_XJ2xin, "
sql = sql & "sum(ZB_SF) as ZB_SFxin "
sql = sql & "from GZ_ZB where ZB_TID = " & Request("ti")
rs1.open sql,conn,1,1
%>
 <tr class=xl78 height=34 style='mso-height-source:userset;height:26.1pt'>
  <td colspan=2 height=34 class=xl98 style='height:26.1pt'>合计</td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(0)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(1)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(2)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(3)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(4)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(5)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(6)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(7)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(8)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(9)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(10)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(11)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(12)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(13)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(14)%></td>
  <td class=xl98 style='border-top:none;border-left:none'><%=rs1(15)%></td>
 </tr>
<%
dim n
n = rs1(15)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Design by [url]www.[/url] '
' Copyright 2007 '
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function int2chn(n)
dim i,j,k,strlen,retval,x,y,z,str
z=array("零","壹","貳","參","肆","伍","陸","柒","捌","玖")
y=array("","拾","佰","仟")
x=Array("","萬","億","萬萬億")
strlen=len(n)
str1=n
for i= 1 to strlen
j=mid(str1,i,1)
retval=retval&z(j)
if j>0 then retval=retval&y((strlen-i) mod 4)'如果大於零,加入十進位字符
retval=replace(retval,z(0)&z(0),z(0))'出現兩個零後只留一個
if ((strlen-i) mod 4)=0 and right(retval,1)=z(0) then retval=left(retval,len(retval)-1)'每四位加入進階
if ((strlen-i) mod 4)=0 then retval=retval&x(int((strlen-i)/4))'把最後的零去掉
next
int2chn=retval
end function
%>
 <tr height=34 style='mso-height-source:userset;height:26.1pt'>
  <td colspan=18 height=34 class=xl101 style='height:26.1pt'>实发金额(大写):<%=retval%>元 整</td>
#9
madpbpl2007-12-20 18:53
不好意思,我也考虑了一会。
应该这样输出结果
<%response.write int2chn("12345")%>
把12345换成你想转换的数字即可
#10
letla2007-12-21 08:02
呵呵,谢谢madpbpl。。。
1