首页 > Unity3D频道 > 【Unity3D研究院之游戏开发】 > Unity3D研究院之在MAC OS下解析Excel表格(五十二)
2013
04-10

Unity3D研究院之在MAC OS下解析Excel表格(五十二)

补充!!!优先看http://www.xuanyusong.com/archives/2429 我写的这一篇文章吧。。 可以直接解析excel 。

 

今天研究了一下Unity中解析Excel表格的操作。如果你是Windows下那么直接看这篇文章吧。

http://forum.unity3d.com/threads/57967-How-can-I-get-data-from-excel

这是一个老外写的,还有例子的下载地址。它基于ODBC来解析Excel表格,可是ODBC在MAC OS上是不支持的,为了在Mac OS 中也能解析Excel ,我想到了CSV。

Ok我来写一个简单的Excel表格,然后将它保存为csv格式。

Unity3D研究院之在MAC OS下解析Excel表格(五十二) - 雨松MOMO程序研究院 - 1

 

csv会以逗号的间隔形式将数据分开。为了在Unity中使用,我们还需要修改一下它的文件格式为.txt。为了能显示中文还得修改一下文本的编码格式为UTF-8 或者 UTF-16 。在Mac上直接用Unitron  来修改编码格式吧。

 

Unity3D研究院之在MAC OS下解析Excel表格(五十二) - 雨松MOMO程序研究院 - 2

 

好吧,下面我们来测试读取吧。 在Hierarchy视图中创建一个GUI Text对象,然后创建一条脚本给他挂上。

 

 

为了方便使用我把csv.txt放在了Resources文件夹下面,如果没有你需要创建一个。 TextAsset 就可以来读取二进制文件了,然后直接将读取的内容显示出来。

 

Unity3D研究院之在MAC OS下解析Excel表格(五十二) - 雨松MOMO程序研究院 - 3

 

csv将文本内容以分号的形式隔开。 其实我们可以将每个表组成一个二维数组,这样操作起来就非常方便。这时候我们需要安行类区分csv二进制的内容。 这里需要记住的是mac下换行符是”/r” 而windows下的换行符是”/n”

 

如果你在程序中需要动态的读取这些数据,建议你在初始化中将csv的所有数据保存在一个全局的二维数组中。常驻内存中,当使用的时候只要调用这个二维数组即可。

在PC iOS android 平台下已经测过没有问题 最后是本文的下载地址:http://vdisk.weibo.com/s/x49QE

欢迎大家一起讨论学习,欢迎大家给我留言!加油,哇咔咔!!

 

雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!

--

最后编辑:
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
捐 赠如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。

Unity3D研究院之在MAC OS下解析Excel表格(五十二)》有 19 条评论

  1. tampa 说:

    大神,android上怎么读取excel啊,拜读过你的其他文章,里面的方法无法实现啊

  2. 王选杰Aust 说:

    想问下这个直接转换为c#在mac上同样有效么?

  3. wmpdwaxx 说:

    https://github.com/cunkai/Unity-CSV-To-C-SharpUnity CSV转为C#文件 来省去解析csv的步骤,节省游戏加载时间。

  4. aa 说:

    请问,可以修改csv的数据么?

  5. 弥漫 说:

    你好,在windows下 unity读取excel 中问没有问题, 程序发布之后 excel 的中文就乱码了是怎么回事? unity 中以设置了中文字体,excel 的编码改为了utf8 ,请大神指点!

  6. IcyOrange 说:

    额……英文不好是硬伤……在Window下解析Excel能否也简单介绍下啊……

  7. 真心希望,MOMO大神把这些技术弄到书上,您出的那本书差不多看了。还是这里的知识深,精。静待

  8. 跟我的做法完全一样

  9. 游戏开发中也会用到解析Excel哦? 转发了….O_O

  10. 崔彬0 说:

    我想请教您一下,怎么从某个链接或者程序,进入到appstore?

留下一个回复

你的email不会被公开。