在Unity3d中常常會碰到中文亂碼的問題,好比代碼中的[AddComponentMenu("GameDef/AI/戰機AI")],註釋,中文文本等等工具
其緣由在於,unity自己是不顧及地區的,因此默認所有爲unicode編碼,形成中文亂碼編碼
解決方法不少,好比,spa
第一種方法,在數量少的時候可行,數量多的時候就比較耗時和重複3d
第二種方法在項目前期作好的話很是有效,可是若是以前沒這麼處理就就沒什麼用了,並且一旦unity版本升級或者使用其餘版本,須要從新修改模板code
因此總結起來,能夠這樣處理:繼承
批量編碼轉換工具代碼unicode
使用visual studio建立一個控制檯程序string
代碼以下it
using System;
using System.IO;
using System.Text;io
namespace ToUTF8
{
class Program
{
static void Main(string[] args)
{
var dir = Directory.GetCurrentDirectory();
foreach (var f in new DirectoryInfo(dir).GetFiles("*.cs", SearchOption.AllDirectories))
{
var s = File.ReadAllText(f.FullName, Encoding.Default);
try
{
File.WriteAllText(f.FullName, s, Encoding.UTF8);
}
catch (Exception)
{
continue;
}
}
}
}
}
編譯生成的exe文件放在Unity項目中,雙擊運行,等待運行便可