1. 程式人生 > 程式設計 >ASP將數字轉中文數字(大寫金額)的函式

ASP將數字轉中文數字(大寫金額)的函式

下面跟大家分享2種不同函式的實現方式。

ASP將數字轉中文數字金額的函式一

<% 
function Money(thenumber)
'dim Money,i,String1,String2,length,checkp'定義變數
dim one(),onestr()'定義陣列
 
String1 = "零壹貳叄肆伍陸柒捌玖"
String2 = "萬仟佰拾億仟佰拾萬仟佰拾元角分釐毫"
 
checkp=instr(thenumber,".")'判斷是否含有小數位
if checkp<>0 then
 thenumber=replace(thenumber,".","")'去除小數位
end if
length=len(thenumber) '取得資料長度
redim one(length-1)'重新定義陣列大小
redim onestr(length-1)'重新定義陣列大小
for i=0 to length-1
 one(i)=mid(thenumber,i+1,1) '迴圈取得每一位的數字
 one(i)=mid(string1,one(i)+1,1)'迴圈取得數字對應的大寫
 if checkp=0 then '不含有小數的資料其數字對應的單位
  onestr(i)=mid(string2,14-length+i,1)
 else '含有小數的資料其數字對應的單位
  onestr(i)=mid(string2,15-length+i+len(thenumber)-checkp,1)
 end if
 one(i)=one(i)&onestr(i)'將數字與單位組合
 next
  Money=replace(join(one)," ","") '取得陣列中所有的元素,並連線起來
  Money=replace(Money,"零元","元")
  Money=replace(Money,"零萬","萬")
  Money=replace(Money,"零億","億")
  Money=replace(Money,"零仟","零")
  Money=replace(Money,"零佰","零拾","零")
 
 do while not instr(Money,"零零")=0
 Money=replace(Money,"零零","零")
 loop
 
' response.write Money '顯示結果
 end function
Response.write Money(8200001)
%>

ASP阿拉伯數字轉中文數字

<% 
'################################ 
'函式名:阿拉伯數字轉中文數字函式 
'################################ 
function chnumstr(num) 
num=int(abs(num))
strlen=len(num) 
for i=1 to strlen 
select case mid(num,1) 
case 1:chnum="一":case 2:chnum="二":case 3:chnum="三"
case 4:chnum="四":case 5:chnum="五" 
case 6:chnum="六":case 7:chnum="七":case 8:chnum="八"
case 9:chnum="九":case 0:chnum="零" 
end select 
chnumstr=chnumstr&chnum 
if i=strlen-1 and mid(num,1)<>0 then chnumstr=chnumstr&"十" 
if i=strlen-2 and mid(num,1)<>0 then chnumstr=chnumstr&"百" 
if i=strlen-3 and mid(num,1)<>0 then chnumstr=chnumstr&"千" 
if i=strlen-4 and mid(num,1)<>0 then chnumstr=chnumstr&"萬" 
if i=strlen-5 and mid(num,1)<>0 then chnumstr=chnumstr&"十" 
if i=strlen-6 and mid(num,1)<>0 then chnumstr=chnumstr&"百" 
if i=strlen-7 and mid(num,1)<>0 then chnumstr=chnumstr&"千" 
if i=strlen-8 and mid(num,1)<>0 then chnumstr=chnumstr&"萬" 
next 
if left(chnumstr,1)="一" then chnumstr=right(chnumstr,len(chnumstr)-1)
if right(chnumstr,1)="零" then chnumstr=left(chnumstr,len(chnumstr)-1)
end function
Response.write chnumstr("84221213")
%>

到此這篇關於ASP將數字轉中文數字(大寫金額)的函式的文章就介紹到這了,更多相關ASP 數字轉中文數字內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!