無聊啊,陸續(xù)把以前做的一些小玩意兒共享一下。由于時(shí)間比較長了,那時(shí)候設(shè)計(jì)能力有限,現(xiàn)在也沒時(shí)間維護(hù),如果發(fā)現(xiàn)bug就別用了,望體諒。
1 輸入文件夾:被轉(zhuǎn)換文件所在路徑。
2 輸入文件名格式:輸入文件名過濾,*代表任意字符串,?代表任意字符,每個(gè)文件名格式用|隔開。
3 輸入刷新:[6]沒有選中的情況下,當(dāng)[1]或[2]發(fā)生改變或[1]指定路徑中文件變更時(shí),點(diǎn)擊此按鈕進(jìn)行樹形視圖[4]的刷新。
4 輸入視圖:所有符合[2]過濾條件的文件都以樹形方式顯示在此視圖中。
5 包含子文件夾:選中情況下,對[1]指定文件夾和所有它的子文件夾中的文件進(jìn)行過濾;沒選中情況下,不對子文件夾進(jìn)行過濾。
6 輸入自動(dòng)刷新:選中情況下,當(dāng)[1]或[2]發(fā)生改變時(shí),自動(dòng)刷新[4]視圖。但是,[1]的指定路徑中有文件變更時(shí),需點(diǎn)擊按鈕[4]進(jìn)行刷新。沒選中情況下,不進(jìn)行自動(dòng)刷新。
7 輸出文件夾:轉(zhuǎn)換后文件的輸出路徑。
8 輸出文件名格式:輸出文件格式,可引用變量:${prefix}代表輸入文件名前綴,${suffix}代表輸入文件名后綴(也就是擴(kuò)展名)。${prefix}和${suffix}可不引用或引用多次。
9 輸出刷新:[11]沒有選中的情況下,當(dāng)[7]或[8]發(fā)生改變或[1]指定路徑中文件變更時(shí),點(diǎn)擊此按鈕進(jìn)行[4]樹形視圖的刷新。
10 輸出視圖:按照[8]中格式以樹形方式顯示所有輸出文件的預(yù)覽。
11 輸出自動(dòng)刷新:選中情況下,當(dāng)[7]或[8]發(fā)生改變時(shí),自動(dòng)刷新[10]視圖。但是,[7]的指定路徑中文件變更時(shí),需點(diǎn)擊按鈕[9]進(jìn)行刷新;沒選中情況下,不進(jìn)行自動(dòng)刷新。
12 轉(zhuǎn)換器選擇:指定轉(zhuǎn)換所用轉(zhuǎn)換器。預(yù)置的轉(zhuǎn)換器主要有4種,共13個(gè):
(1) 文件改名(復(fù)制原文件)。
(2) 文件改名(移動(dòng)原文件)。
(3) 文件行結(jié)束符轉(zhuǎn)換成Dos格式(CRLF)。
(4) 文件行結(jié)束符轉(zhuǎn)換成Unix格式(LF)。
(5) 文件行結(jié)束符轉(zhuǎn)換成Mac格式(CR)。
(6) 文件編碼轉(zhuǎn)換為Shift-JIS碼(自動(dòng)判斷輸入文件的編碼)。
(7) 文件編碼轉(zhuǎn)換為EUC碼(自動(dòng)判斷輸入文件的編碼)。
(8) 文件編碼轉(zhuǎn)換為New-JIS碼(自動(dòng)判斷輸入文件的編碼)。
(9) 文件編碼轉(zhuǎn)換為Old-JIS碼(自動(dòng)判斷輸入文件的編碼)。
(10) 文件編碼轉(zhuǎn)換為Nec-JIS碼(自動(dòng)判斷輸入文件的編碼)。
(11) 文件MD5驗(yàn)證碼的生成(MD5加密:目前國外大多數(shù)網(wǎng)站提供的下載文件的驗(yàn)證碼)。
(12) 文件編碼從本地編碼轉(zhuǎn)換為ASCII碼(轉(zhuǎn)換器為JDK中提供的native2ascii.exe程序,不會(huì)自動(dòng)判斷輸入文件的編碼;還有,使用前用戶要手動(dòng)修改JDK的路徑)。
(13) 文件編碼從ASCII碼轉(zhuǎn)換為本地編碼(轉(zhuǎn)換器為JDK中提供的native2ascii.exe程序,不會(huì)自動(dòng)判斷輸入文件的編碼;還有,使用前用戶要手動(dòng)修改JDK的路徑)。
13 配置轉(zhuǎn)換器:點(diǎn)擊打開轉(zhuǎn)換器配置窗口。具體使用見[3.How To Extend]。
14 運(yùn)行/停止:運(yùn)行轉(zhuǎn)換/停止轉(zhuǎn)換。顯示為"Run"時(shí),點(diǎn)擊后開始運(yùn)行,運(yùn)行中名稱變?yōu)?Stop",點(diǎn)擊可停止轉(zhuǎn)換。轉(zhuǎn)換停止或全部結(jié)束后,名稱變?yōu)?Run"。
15 日志:顯示錯(cuò)誤和轉(zhuǎn)換結(jié)果信息。
3. How To Extend
用戶如果想增加轉(zhuǎn)換器,可點(diǎn)擊上圖中按鈕[13],打開轉(zhuǎn)換器配置窗口。轉(zhuǎn)換器可以是任何命令行的執(zhí)行程序,包括cmd.exe,java.exe和提供命令行參數(shù)的GUI執(zhí)行程序。注意:轉(zhuǎn)換器至少需要有輸入文件和輸出文件兩個(gè)參數(shù)。
轉(zhuǎn)換器配置界面也非常簡單,通過下圖做一下簡單介紹:

1 轉(zhuǎn)換器列表:顯示轉(zhuǎn)換器列表。
2 新建:做成新的轉(zhuǎn)換器。
3 復(fù)制:做成新的轉(zhuǎn)換器并復(fù)制當(dāng)前轉(zhuǎn)換器配置到新做成的轉(zhuǎn)換器。
4 刪除:刪除當(dāng)前選擇的轉(zhuǎn)換器。
5 上移:當(dāng)前選擇的轉(zhuǎn)換器上移一格。
6 下移:當(dāng)前選擇的轉(zhuǎn)換器下移一格。
7 標(biāo)題:轉(zhuǎn)換器的標(biāo)題。
8 執(zhí)行文件:轉(zhuǎn)換器運(yùn)行的執(zhí)行文件。
9 參數(shù):[8]中指定執(zhí)行文件的參數(shù)。可引用變量:${infile}為輸入文件,${outfile}為輸出文件,${location}為執(zhí)行文件所在文件夾。
10 工作路徑:[8]中指定執(zhí)行文件的工作路徑。可引用變量:${location}為執(zhí)行文件所在文件夾。
11 OK:保存所有修改并關(guān)閉配置窗口。
12 Cancel:取消所有修改并關(guān)閉配置窗口。
4. Improve
對比之前發(fā)布的beta版,正式版V1.0.0主要的改進(jìn)如下:
1 輸入視圖和輸出視圖做到近乎完美的同步。
2 增加了輸入視圖和輸出視圖的自動(dòng)刷新,并提供開關(guān)。當(dāng)文件比較多,嚴(yán)重影響自動(dòng)刷新時(shí),可關(guān)閉自動(dòng)刷新功能。
3 轉(zhuǎn)換器配置窗口中增加了[Copy]按鈕。
4 解決了轉(zhuǎn)換器配置窗口中點(diǎn)擊上移,下移或刪除按鈕之后回到主窗口進(jìn)行文件轉(zhuǎn)換,所選轉(zhuǎn)換器會(huì)錯(cuò)亂的bug。
5 增加了轉(zhuǎn)換停止的功能,這樣可以以正常方式停止當(dāng)前的轉(zhuǎn)換操作;并且轉(zhuǎn)換期間中不影響圖形界面操作。
6 預(yù)置了更多實(shí)用的轉(zhuǎn)換器,如:行結(jié)尾符的轉(zhuǎn)換和文件編碼的轉(zhuǎn)換。
7 文件改名轉(zhuǎn)換器沒有采用"cmd.exe /c copy",原因是速度稍慢。
V1.1.0的改進(jìn)如下:
1 增加了托拽功能:用戶可以從Explorer中托拽文件或文件夾到[Input/Output]組中。如果托拽的是文件夾,文件夾的絕對地址將寫到Input Directory或Output Directory中。
如果托拽的是文件,文件所在文件夾的絕對地址將寫到Input Directory或Output Directory中,文件名稱將寫到File Name Patterns中。
2 將Input Directory/Output Directory和File Name Patterns的編輯框變成了可輸入的ComboBox框,并增加了保存歷史記錄的功能。
3 增加了手動(dòng)刷新的快捷鍵(F5)。當(dāng)輸入焦點(diǎn)在Input區(qū)域時(shí),刷新輸入視圖;當(dāng)輸入焦點(diǎn)在Output區(qū)域時(shí),刷新輸出視圖。
V1.1.1的改進(jìn)如下:
1 修正了File Name Patterns對文件過濾時(shí)嚴(yán)格區(qū)分大小寫的Bug。
2 將Input Directory/Output Directory瀏覽對話框的初始路徑設(shè)定為當(dāng)前輸入框中的路徑。