Unity发布版读取中文乱码

倾然丶 夕夏残阳落幕 提交于 2020-02-23 18:33:54

今天使用Unity读取网页数据的时候,有时候是好的,有时候显示乱码。

var request = UnityWebRequest.Get(url);

// Wait for the response and then get our data
yield return request.Send();
var data = request.downloadHandler.text;

后来发现网页数据写的格式是gbk,于是使用Encoding进行转换读取倒是成功了,不是乱码。

Encoding encoding =Encoding.GetEncoding("gbk");
var data=encoding.GetString(request.downloadHandler.data);

在编辑器运行没问题,但是发布出exe却发现读取的时候会报错:
Unsupported encoding 'GBK': Encoding name 'GBK' not supported

后来查找才知道,因为打包出来的版本没有带dll,而编辑器带了dll,解决方法如下:

将Unity安装目录中的\Editor\Data\Mono\lib\mono\unity 目录下的 I18N.dll 和 I18N.CJK.dll 复制到Assets/Plugins目录下,打包的时候会一起打包出去就行了。

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!