向大家隆重推薦一個(gè)比批處理更強(qiáng)大的windows腳本。不知道你是不是經(jīng)常寫一些小工具,用批處理實(shí)現(xiàn)不了。只好用C來(lái)做,結(jié)果打開IDE,寫段程序,
調(diào)試編譯。當(dāng)然這些都沒(méi)問(wèn)題,關(guān)鍵是因?yàn)槭桥R時(shí)寫的,沒(méi)有考慮需求變化(呵呵),之后有時(shí)想要改改,那么就是打開工程,修改調(diào)試,編譯運(yùn)行。如果有人要享
用,往往你把可執(zhí)行文件發(fā)給他還不夠,還要把源碼發(fā)給他,因?yàn)樗摹P⌒∫粋€(gè)文件處理,寫個(gè)exe。殺雞焉用牛刀。今天我隆重推薦WSH+JSP,
Java的語(yǔ)法,支持COM組件的windows腳本宿主,完全替代簡(jiǎn)陋的批處理,并且做出的東西,全是開源的。
這里響應(yīng)靳波前日日志中的txt2bin工具,寫了一段簡(jiǎn)單的例子,你把它保存為一個(gè)文本文件txt2bin.js,雙擊就可以運(yùn)行:
1 ////////////////////////////////////////////////////////
2 //txt2bin
3 ////////////////////////////////////////////////////////
4 // 創(chuàng)建文件系統(tǒng)對(duì)象
5 var FileSys = WScript.CreateObject("Scripting.FileSystemObject");
6 // 打開文本文件
7 var TxtFile = FileSys.OpenTextFile("test.txt");
8 // 創(chuàng)建bin文件
9 var BinFile = FileSys.CreateTextFile("test.bin", true);
10 // 讀一行
11 var buf = TxtFile.ReadLine();
12 // 聲明一個(gè)字符串
13 var str = new String();
14 for(var i =0 ;i<buf.length/*字符串長(zhǎng)度*/; i++){
15 ch = buf.charAt(i); //得到一個(gè)字符,并把它轉(zhuǎn)成數(shù)值
16 str+= String.fromCharCode(ch); // 追加到數(shù)組
17 }
18 // 寫入bin文件
19 BinFile.Write(str);
20 // 關(guān)閉文件
21 TxtFile.Close();
22 BinFile.Close();
23 ////////////////////////////////////////////////////////
當(dāng)然關(guān)于腳本語(yǔ)言還有諸如python、ruby、lua等,但要在windows下獨(dú)立運(yùn)行,破費(fèi)周折,目標(biāo)機(jī)是否有需要的dll還不一定,而這個(gè)程序只需要IE3.0以上版本,office。想必遍地都是吧。