今天使用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目录下,打包的时候会一起打包出去就行了。
来源:CSDN
作者:鱼蛋-Felix
链接:https://blog.csdn.net/egostudio/article/details/104458446