Unity3D 腳本UTF-8編碼/Unity3D 腳本支持中文

Unity3D腳本支持中文解決辦法/Unity3D腳本編碼格式設置:

1》進入unity安裝目錄\Unity\Editor\Data\Resources\ScriptTemplates,這個文件夾下有81-NewBehaviourScript.cs.txt和80-NewBehaviourScript.js.txt文件,這兩個文件裏的代碼就是新建腳本後生成代碼模板。也就是說,你新建的都是Copy它們而已,不折不扣的一直在模仿。。。


看懂上面的圖片了沒。

也正是如此 ,所以導致我們新建的腳本編碼格式一直是系統默認的編碼頁格式GBK。既然如此,這肯定是個坑啊。那我就來把它修改了。

下面開始了,打開:81-NewBehaviourScript.cs.txt和80-NewBehaviourScript.js.txt


上圖有2個要點:

一 :“//支持中文”。這是讓模板強制進行中文存儲,

二 :高級保存項的編碼設置,選中UTF8簽名頁。強制模板對中文進行UTF8支持。以後它在遇到中文就一樣支持了。

如果你沒有VS。你可以看看下邊怎麼修改編碼格式,保證第二部的萬無一失。


2》修改這2個文件編碼格式,可以用Unity\Editor\Data\Tools\UniSciTE\UniSciTE.exe打開後另存爲UFT-8 with  BOM&nbMonoBehaviour.OnJointBreak褰撳叧鑺傛柇寮?sp;編碼格式,文件名不變。


用MonoDevelop打開後Save as...也可以完成的哦:


用visio studio的同學打開後, 進入:菜單-》文件-》高級保存選項(V).. 



點擊 編碼(E):


確定保存。


這樣以後新建的腳本全都是UTF-8的編碼,而且是自己先要的格式,比如你可以在代碼頭添加代碼著作權,日期,簡述等註釋。


川北原創:http://hi.baidu.com/next2_me/item/dd66afc2ba08393498b4984f

不是Mono不支持Unicode是新建腳本這種copy的模式導致對中文的支持不好。希望以上的內容可以幫助大家。


因爲u3d 自帶的代碼編輯器是MonoDevelop,在monodevelop下編寫的應用程序,對於中文顯示會出現亂碼,甚至是編譯不過的問題,分析應該在於編碼的方式與解碼的方式不一致導致。但在發現在遊戲裏中文輸出是變成亂碼的,我在想是不是由於編碼的問題,於是把文件保存爲gb2312格式(也可以用記事本保存)。但發現每次再從u3d界面雙擊進入編輯器,或者再次保存,又會出現了亂碼的問題。我在懷疑可能是文件格式又變成utf8之類的,另存爲看一下,果然不出所料啊。
 方法一:  monodevelop默認採用UTF-8編碼格式,嘗試在記事本下將其另存爲unicode。問題得到解決。難道unity3d的解碼格式爲傳統unicode標準。
 方法二:  Unity4.1\Editor\Data\Resources\ScriptTemplates這是我這邊的路徑,裏面的C#和js腳本你改下編碼就可以了


unicode 與UTF8的關係:   
     unicode 是一個標準,utf-8 是 unicode 標準裏面規定的一個編碼。
     unicode 只是個 2 字節的碼錶 

     使用時可以直接使用這個 2 字節的編碼,也可以再進行編碼後使用 

     utf8 就是對 unicode 再編碼的方式,好處是 ascii 字符用一個字節表示 

如此,可知如果採用unicode碼錶去對UTF8編碼的文件進行解碼,那麼英文沒有問題,中文及符號則會出現亂碼。

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章