好玩的vbs特色代碼第2/6頁
更新時(shí)間:2007年03月08日 00:00:00 作者:
vbs的字符串運(yùn)算也非常方便,下面是兩種腳本轉(zhuǎn)化人民幣為漢字的對比
<SCRIPT LANGUAGE=vbs>
N=34334100000.0502'假設(shè)N不是負(fù)數(shù),末尾不帶0
Snz=split(cstr(N),".")(0)'整數(shù)部分轉(zhuǎn)字串
A=array( "零","壹","貳","叁","肆","伍","陸","柒","捌","玖")
B=array("元","拾","佰","仟","萬","拾","佰","仟","億","拾","佰","仟","萬")
C=array("角","分","厘","毫")
WeiSz=len(cstr(int(Snz)))'整數(shù)位數(shù)
for i=1 to WeiSz
JieG=JieG & A(cint(mid(Snz,i,1)))
if cint(mid(Snz,i,1))<>0 or _
(WeiSz-i)=0 or (WeiSz-i)=4 or _
(WeiSz-i)=8 or (WeiSz-i)=12 then JieG=JieG & B(WeiSz-i)
JieG=replace(JieG,"零零","")
next
JieG=replace(JieG,"零","")
if N<>int(N) then
JieG=JieG & "零"
Snx=split(cstr(N),".")(1)'小數(shù)部分轉(zhuǎn)字串
WeiSx=len(cstr(int(Snx)))'小數(shù)位數(shù)
for i=1 to WeiSx
if cint(mid(Snx,i,1))=0 then i=i+1
JieG=JieG & A(cint(mid(Snx,i,1))) & C(i-1)
next
end if
msgbox JieG
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
function Chinese(num) //將阿拉伯?dāng)?shù)字翻譯成中文的大寫數(shù)字
{
if(!num)
{alert("Number is wrong!"); return "Number is wrong!";}
var AA = new Array("零","壹","貳","叁","肆","伍","陸","柒","捌","玖");
var BB = new Array("","拾","佰","仟","萬","億","點(diǎn)","");
var a = (""+ num).replace(/(^0*)/g, "").split("."), k = 0, re = "";
for(var i=a[0].length-1; i>=0; i--)
{
switch(k)
{
case 0 : re = BB[7] + re; break;
case 4 : if(!new RegExp("0{4}\{"+ (a[0].length-i-1) +"}$").test(a[0]))
re = BB[4] + re; break;
case 8 : re = BB[5] + re; BB[7] = BB[5]; k = 0; break;
}
if(k%4 == 2 && a[0].charAt(i+2) != 0 && a[0].charAt(i+1) == 0) re = AA[0] + re;
if(a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k%4] + re; k++;
}
if(a.length>1) //加上小數(shù)部分(如果有小數(shù)部分)
{
re += BB[6];
for(var i=0; i<a[1].length; i++) re += AA[a[1].charAt(i)];
}
return re;
}
alert(Chinese("34334100000.0502"));
</script>
數(shù)字轉(zhuǎn)化為漢字還有一個(gè)技巧,試驗(yàn)一下:
<SCRIPT LANGUAGE=vbs>
for i=1 to 10
alert left(MonthName(i,True),1)
next
</SCRIPT>
是日期轉(zhuǎn)漢字:
<SCRIPT LANGUAGE=vbs>
Function D(x)
if int(split(x,"-")(2)/10)=0 then D=D & F(split(x,"-")(2)) else _
if split(x,"-")(2) mod 10 =0 then D=D & F(int(split(x,"-")(2)/10)) & "十" else _
D=D & F(int(split(x,"-")(2)/10)) & "十" & F(split(x,"-")(2) mod 10)
D=F(split(x,"-")(0)) & "年" & MonthName(split(x,"-")(1),True) & replace(D,"一十","十") & "日"
end Function
Function F(x)
for i=1 to len(x)
if mid(x,i,1)="0" then F=F & "零" else F=F & left(MonthName(mid(x,i,1),True),1)
next
end Function
msgbox D(date)
</SCRIPT>
相關(guān)文章
使用 Iisext.vbs 啟用Web服務(wù)擴(kuò)展文件的方法
這篇文章主要介紹了如何使用 iisext.vbs 在本地或遠(yuǎn)程計(jì)算機(jī)上啟用 Web 服務(wù)擴(kuò)展文件,需要的朋友可以參考下2014-07-07VBS實(shí)現(xiàn)將當(dāng)前時(shí)間轉(zhuǎn)換成UTC時(shí)間
這篇文章主要介紹了VBS實(shí)現(xiàn)將當(dāng)前時(shí)間轉(zhuǎn)換成UTC時(shí)間,十分的簡單實(shí)用,需要的朋友可以參考下2015-05-05vbs中關(guān)于計(jì)算機(jī)名的相關(guān)討論
vbs中關(guān)于計(jì)算機(jī)名的相關(guān)討論...2007-03-03vbs實(shí)現(xiàn)只復(fù)制比目標(biāo)文件更新的文件
有時(shí)候我們需要時(shí)候備份一些文件,只有當(dāng)這個(gè)文件被修改了并且不是空的時(shí)候才復(fù)制2014-04-04用vbs腳本獲取網(wǎng)卡MAC,CPUID,硬盤序列號的實(shí)現(xiàn)代碼
這篇文章主要介紹了用vbs腳本獲取網(wǎng)卡MAC,CPUID,硬盤序列號的實(shí)現(xiàn)代碼,需要的朋友可以參考下2019-04-04