看板 Linux 關於我們 聯絡資訊
1. file Sample5.java ./Sample5.java: ISO-8859-1 Java program text, with CRLF, NEL line terminators 上面用file指令可以得到Sample5.java 檔案屬性,那我是想只要編碼訊息部分就好 還有個疑問是 file 指令找到編碼是指檔案名稱的編碼還是檔案內容編碼 因為我用 recode 工具轉碼 ISO-8859-1 轉 UTF-8 變成亂碼 但我用 BIG5 轉成 UTF-8 出來是OK, 所以我檔案內容編碼應該是BIG5 而ISO-8859-1是 檔案名稱編碼嗎? 2. 下面是我先用find 找出每個.java檔案路徑, 那我先判斷是每個檔案原本的編碼格式,之再做轉碼 那怎麼取得檔案屬性編碼字串進行比對選擇不同的處理 #!/bin/bash find . -type f -iname '*.java' | while read path ; do done 謝謝 -- ※ 編輯: yshihyu 來自: 112.104.143.63 (11/11 02:07)
ckclark:編碼是有模糊地帶的 要看你要轉的有哪幾種再來決定 11/11 02:15
yshihyu:我就是判斷檔案內容編碼是big5 or GB2312 就轉成UTF-8 11/11 02:19
ckclark:如果vim的fencs有設定好的話(每個檔案打開都正常) 11/11 02:21
ckclark:可以試試這個http://tinyurl.com/4vnxvya 11/11 02:21
yshihyu:我現在不是在vim 顯示上問題~就是我編譯器判讀是utf-8 11/11 02:22
yshihyu:程式碼都要utf-8.. 11/11 02:23
ckclark:因為vim可以用set fenc來轉檔案編碼 11/11 02:24
yshihyu:恩恩~但是我有很多檔案~ 這邊我都用vim 轉換就麻煩 11/11 02:24
ckclark:結果直接enca -x utf8 ...就搞定了 11/11 03:17
bitlife:在沒有更多資訊的情況下,BIG5會被認為是ISO-8859-1 11/11 06:19
bitlife:這是正常的,瀏覽器因為有OS國別/語系資訊,知道使用者用 11/11 06:20
bitlife:中文環境,所以可以先判斷檔案是否符合Big5?不符才判定為 11/11 06:21
bitlife:ISO-8859-1 11/11 06:21
bitlife:以前在DOS系統下,沒跑倚天中文系統時,Big5檔案type出來 11/11 06:22
bitlife:就像亂碼,而這些亂碼完全符合ISO-8859-1 11/11 06:22
ckclark:看起來是byte值0~255都符合iso-8859-1 11/11 19:29