Python3 要開啟、讀取檔案時,若不是 UTF-8,會需要輸入檔案的語系編碼,Python 會自動都轉換成 UTF-8 做操作。
如下範例:(現在會遇到 Big5 的,大多數都是 Windows 的 CSV)
with open(filename, encoding='Big5') as csvline: rows = csv.reader(csvline, delimiter=',')
但是有些來源是 Big5、有些是 UTF-8,就需要偵測語系編碼,要怎麼做呢?
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
Python3 要開啟、讀取檔案時,若不是 UTF-8,會需要輸入檔案的語系編碼,Python 會自動都轉換成 UTF-8 做操作。
如下範例:(現在會遇到 Big5 的,大多數都是 Windows 的 CSV)
with open(filename, encoding='Big5') as csvline: rows = csv.reader(csvline, delimiter=',')
但是有些來源是 Big5、有些是 UTF-8,就需要偵測語系編碼,要怎麼做呢?
PDF 常會拿到有加密的版本,於 Linux 要怎麼將 PDF 的密碼移除呢?
PHP 使用 Base64 來做編碼(Encode)、解碼(Decode) 是很簡單的,使用下述兩個 Function 即可:
而 Base64 編碼的結尾都會有等號(=),若看到 Base64 沒有等號的話,要怎麼處理呢?
Python3 遇到下述問題:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0–9: ordinal not in range(128)
此錯誤訊息,要怎麼解決呢?
一般這個都在 Python2 看到,沒想到在 Python3 也會遇到.. @.@a..
在 access.log / error.log 或者某些頁面,有時後會看到 \x 開頭,16進制的字串,要怎麼將這些字串還原回原本的文字呢?
Linux CLI 要計算一個檔案內,行數相同字串的重複次數,通常就是 sort 再 uniq -c 計算。
平常計算都是正常的,但是若遇到編碼種類比較多元,有些長角的 a、o.. 會跟一般英文字母的 a、o 算在一起,當然案例還有更多舉不完。
Vim 想要查看目前這個字元的 ASCII 碼(16進位、8進位),或此字元的 UTF-8 編碼,要怎麼查詢?
註:此功能在追某些特別奇怪(可能有看不到的字元)的問題,會很常用到。
常常會想要加密,讓別人無法解開看出來,這個加密編碼器會將 JavaScript 轉換成表情符號,應該轉的夠徹底了。