unity脚本模板所用编码格式为ANSI,在inspector面板和mac上会显示中文乱码,解决方法为使用vs新建c#控制台应用,输入下面的代码编译,将生成的exe文件放置到脚本目录下运行。
using System;
using System.IO;
using System.Text;
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, new UTF8Encoding(false));
}
catch (Exception)
{
continue;
}
}
}
}
}
如果使用File.WriteAllText(f.FullName, s, Encoding.UTF8)则文档格式为带bom的utf-8.
参考: