中文|轉換 剛才看到一個兄弟提的問題,做完了才發現已經結貼,鬱悶呀~~
只是看到這個東西還算有用,所以貼出來自賞呵呵
思路:
一開始想到用select,用for迴圈將每位阿拉伯數字轉換成對應的中文,然後想到其實可以用數組,這樣子比較少些代碼,畢竟0~9,可以對應起來,可是~問題出現了,對於10~31,要變成“貳拾壹” 這樣格式,呵呵~加一個判斷,嗯~11可不能轉換成“壹拾壹”,在加判斷
呵呵~基本好了,還需要判斷是不是數字呢,ok!這下子應該是可以over了!
<%
t=Now()
Function datetostr(t)
Dim strYear,strMonth,strDay,strResult
strYear = Year(t)
strMonth = Month(t)
strDay = Day(t)
datetostr = casei(strYear) & "年" & casei(strMonth) & "月" & casei(strDay) & "日"
End Function
Function casei(i)
Dim arrNum,arrCNNum
If(IsNumeric(i))Then
arrNum = Split(i)
arrCNNum=Split("零,壹,貳,三,肆,伍,陸,柒,捌,玖",",")
If( i<10 OR i>31)Then
For it=1 To Len(i)
strResult = strResult & arrCNNum(CInt(Mid(i,it,1)))
Next
ElseIf(i > 9 AND i < 12)Then
strResult = "拾" & arrCNNum(CInt(Mid(i,2,1)))
Else
strResult = arrCNNum(CInt(Mid(i,1,1))) & "拾" & arrCNNum(CInt(Mid(i,2,1)))
End If
End If
casei = strResult
End Function
Response.Write(datetostr(t))
%>