需要注意的編碼方式有三處:
作業系統、程式編碼(與原始檔編碼一致)、通訊對方傳入字元的編碼
程式編碼(與原始檔編碼一致)
|
作業系統編碼
|
對方傳入的編碼
|
中文是否ok
|
c2A0編碼的空格
|
utf-8
|
utf-8
|
utf-8
|
ok
|
ok
|
utf-8
|
gbk
|
gbk 正常中文可以,特殊空格不行
|
ok
|
不ok
|
gbk
|
gbk
|
gbk
|
ok
|
不ok
|
一、作業系統
本地檔案路徑編碼跟隨作業系統的編碼
如作業系統編碼為GBK
(修改為UTF8的方法)
看作業系統檔案編碼:複製檔名到UE中,然後Ctrl + H看編碼格式
二、程式
原始檔編碼會對字串編碼產生影響(string格式自帶編碼方式、char[]不含編碼)
三、特殊空格字元C2A0(半形非中斷空格)
note:
在UTF-8編碼裡面存在一個特殊的字元,其編碼是“0xC2 0xA0”,轉換成字元的時候表現為一個半形空格,跟一般的半形空格(ASCII 0x20)不同的是它的寬度不會被壓縮,所以排版中常能用到它,常出現於HTML中的 。但是GB2312、Unicode之類並沒有這樣的字元
因此在GBK編碼的環境下,將無法處理這樣的字元
引用:
UTF-8轉GBK的悲劇:特殊字元C2A0_gbk特殊字元-CSDN部落格
c2a0 這樣的空格 NO-BREAK SPACE - 簡書 (jianshu.com)
c2a0 這樣的空格 NO-BREAK SPACE - 簡書 (jianshu.com)
(侵刪)