纳金网

标题: Unity3d 读取Excel中文打包后乱码的解决方案 [打印本页]

作者: hustlbl    时间: 2014-11-14 10:57
标题: Unity3d 读取Excel中文打包后乱码的解决方案
我读excel的中文打包后也是乱码。弄了好久也没解决,最后尝试了一下XML,可以实现打包后读中文,但总觉得没有excel修改数据方便,但又不想安装个数据库啥的。最后去尝试了一下使用access(office里有),很幸运也成功了,且跟excel一样方便。读取方法也一样。具体的代码参照excel的改一下就OK。
file:///C:/Users/lbl/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png
file:///C:/Users/lbl/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png
file:///C:/Users/lbl/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png
access文件放在StreamingAssets/Access下,文件名为device后缀.accdb.内容参见上图。
device.accdb直接打开office 的Access新建一个就行,在你保存时需要你输入表名,本例名称为DeviceNode

捕获.PNG (58.44 KB, 下载次数: 716)

捕获.PNG

捕获2.PNG (9.51 KB, 下载次数: 746)

捕获2.PNG


作者: hustlbl    时间: 2014-11-14 11:01
有什么问题可直接问
作者: hustlbl    时间: 2014-11-14 11:10
我是菜鸟,被这个问题困扰很久,一直关注到Excel的编码、读取、路径等问题上,却都没能解决问题。最后换个方案替代,成功解决问题,让自己在思考问题、解决问题的方法上吸取到了教训,望对大家也有帮助,少走弯路,少进死胡同。最后发表下自己的看法,Unity对外部资源读取的路径问题最终肯定会给我们用户完美解决的,坐等升级,坐等越来越好用。
作者: huhumark    时间: 2014-11-14 11:53
你直接写入到sqlite中,然后读没有任何问题,而Excel导入sqlite的方法有都是
作者: hyui    时间: 2014-11-14 15:40
good to know !
作者: tianhett    时间: 2014-11-14 18:12
O(∩_∩)O谢谢分享!
作者: hustlbl    时间: 2014-11-15 10:46
hustlbl 发表于 2014-11-14 11:10
我是菜鸟,被这个问题困扰很久,一直关注到Excel的编码、读取、路径等问题上,却都没能解决问题。最后换个 ...

没有问题。我的数据都是这么读的,方便更、删、改、查等操作。
作者: hustlbl    时间: 2014-11-15 10:48
huhumark 发表于 2014-11-14 11:53
你直接写入到sqlite中,然后读没有任何问题,而Excel导入sqlite的方法有都是

没有问题。我的数据都是这么读的,方便更、删、改、查等操作。
作者: hustlbl    时间: 2014-11-15 10:52
huhumark 发表于 2014-11-14 11:53
你直接写入到sqlite中,然后读没有任何问题,而Excel导入sqlite的方法有都是

在程序中读Excel不知道打包后为什么中文总是乱码,又不想安装个数据库。估计直接读SQL server的文件也可以,没试过。
作者: hustlbl    时间: 2014-11-15 10:53
huhumark 发表于 2014-11-14 11:53
你直接写入到sqlite中,然后读没有任何问题,而Excel导入sqlite的方法有都是

在程序中读Excel不知道打包后为什么中文总是乱码,又不想安装个数据库。估计直接读SQL server的文件也可以,没试过。
作者: koonm    时间: 2014-11-22 22:02
hustlbl 发表于 2014-11-15 10:53
在程序中读Excel不知道打包后为什么中文总是乱码,又不想安装个数据库。估计直接读SQL server的文件也可 ...

那是因为编码格式的问题,Unity只支持UTF-8无bom格式




欢迎光临 纳金网 (http://old.narkii.com/club/) Powered by Discuz! X2.5