Unity3D 脚本UTF-8编码/Unity3D 脚本支持中文

来源:互联网 发布:淘宝代销如何刷单 编辑:程序博客网 时间:2024/05/19 06:47

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编码的文件进行解码,那么英文没有问题,中文及符号则会出现乱码。

 


0 0