在前文中,有提到手動方式用 NotePad (記事本) 開啟文字檔案,再以另存檔案、改變編碼成 UTF-8 來儲存,產生 UTF-8 格式的檔案。
不過,這種方式若是遇到很多檔案要轉換時,就會勞民傷財且傷身,我想這事我絕對不做。
那怎麼辦呢?
用程式來解決吧 (以下作業,可以不用明白其原理,只要照著做就能一切順利 -- 這是主賜的平安)
- 開啟 記事本(NotePad) 程式
- 打入下列內容
----------copy-inside-only----------
Const ForReading = 1, ForWriting = 2, TristateTrue = -1, TristateFalse = 0
Dim objFSO, objFile, strg
Dim arg1, arg2If WScript.Arguments.Count = 0 Then
WScript.Echo "No argument on the command line."
WScript.Echo "usage: Ans2UTF8.vbs SourceFile TargetFile"
WScript.Quit
End IfSet args = WScript.Arguments
arg1 = args.Item(0)
arg2 = args.Item(1)Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(arg1, ForReading, False, TristateFalse)
strg = objFile.ReadAll()
objFile.Close
Set objFile = Nothing Set objFile = objFSO.OpenTextFile(arg2, ForWriting, True, TristateTrue)
objFile.Write(strg)
objFile.Close
Set objFile = Nothing
----------copy-inside-only---------- - 存檔,檔名為 Ansi2UniCode.vbs
- 再建立一個 Excel 檔案:簡體2UniCode.xls
- Excel 內容如下
A
B
C
1
檔案目錄 位置 C:\Ch05\ 2
轉碼程式 Ansi2UniCode.vbs 3
檔案名稱清單(代轉) 檔案名稱清單(轉換) 開啟檔案的指令 4
ex5-1.php ex5-1_tc.php Ansi2UniCode.vbs C:\Ch05\ex5-1.php C:\Ch05\ex5-1_tc.php 5
ex5-10.php ex5-10_tc.php Ansi2UniCode.vbs C:\Ch05\ex5-10.php C:\Ch05\ex5-10_tc.php - 其中 B4 儲存格內容為 =LEFT(A4,LEN(A4)-4) & "_tc" & RIGHT(A4,4)
同理 B5 儲存格內容為 =LEFT(A5,LEN(A5)-4) & "_tc" & RIGHT(A5,4)
以下類推,Excel 公式拉一下,就完成了。 - 那 C4, C5 儲存格內容,就會是
C4
=IF(A4="","",$B$2 & " " & $B$1 & A4 & " " & $B$1 &B4) C5
=IF(A5="","",$B$2 & " " & $B$1 & A5 & " " & $B$1 &B5) - 依照代轉檔案的數量(填在 A4 以下的位置),調整 B4、C4 以下的公式內容。記得要存檔。
- 接下來,要上演重頭戲:轉碼作業
● 在控制台中,改變 中文(PRC)
● 重新開機
● 開啟 命令列 (cmd.exe)
● 變更現行目錄到 Ansi2UniCode.vbs 存檔的目錄中
● 再開啟 Excel 檔 簡體2UniCode.xls ,並選取 C4 以下的內容,Copy。
● 回到命令列視窗中,貼上剛才複製的處理指令,就可以在 檔案目錄位置(B2內容) 中的目錄,
看到新產生的文字檔,它們的檔案格式就會是 UniCode。(注意:還不是 UTF-8)
格式:UTF-16LE
沒有留言:
張貼留言