标签:unity unity3d unity3d培训 unity3d极致学院 unity3d游戏开发
因项目需要,需在unity下实现写入excel、打印功能。因之前在winform里操作过excel,故顺心应手===
说明:本次只实现了简单操作步骤,在实际项目需要中,在此基础上扩展即可。
需求:
1、将各种统计数据插入到excel表格中。文字、数字、图片、时间…………
2、打印excel表格
==我们首先来做第一步吧。
操作excel,我一直使用的是NPOI插件,自我感觉该插件非常不错,从java移植到.NET下的。抱着一颗激动的心开始流程……
1、将NPOI.DLL文件拷贝到unity\Assets\Plugins下
(此处注意事项:1、unity4.3版本目前支持.NET2.0,故导入DLL文件请选择2.0版本的,否则unity无法识别
2、如果要读取excel2007表格内容,理论上还需要导入NPOI.OOXML.DLL文件,但unity无法识别该DLL,到目前也没找到解决方案)
2、ok。好戏开始了。创建excel表格
首先:导入命名空间→using
NPOI.SSF.UserModel;using NPOI.SS.UserModel;using System.IO;<vs1.8中老是提示找不到NPOI命名空间,不用理会,unity中可正常执行。个人觉得是否为编译器所致,没试过mono-->
代码展示:
-
public void CreateExcel() {
-
IWorkbook wk = new HSSFWorkbook(); //HSSF在读取excel2007时有误,一般用XSSF.但unity中貌似无法识别该DLL文件,在创建excel则不影响。
-
ISheet sheet = wk.CreateSheet(); //创建工作簿。有些版本excel创建时就带有3个sheet。此处你也可以装下
-
IRow row = sheet.CreateRow(0); //创建行,参数代表第一行,实际应用中根据参数去扩展吧
-
row.CreateCell(0).SetCellValue("this is first table cell "); //创建一个单元格,并设置单元格内容
-
using(FileStream fs = File.OpenWrite(@"d:\test.xls")) {
-
wk.Write(fs); //写入到磁盘文件中
-
}
-
}
-
复制代码
3、看着是不是很简单呀?其实真的很简单。但是在实际项目中得需要你各种完善哦^_^
写一个打印方法:
-
public void PrintFile(string path)
-
{
-
System.Diagnostics.Process process = new System.Diagnostics.Process(); //系统进程
-
process.StartInfo.CreateNoWindow = true; //不显示调用程序窗口
-
process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//
-
process.StartInfo.UseShellExecute = true; //采用操作系统自动识别模式
-
process.StartInfo.FileName=path; //要打印的文件路径
-
process.StartInfo.Verb="print"; //指定执行的动作,打印:print 打开:open …………
-
process.Start(); //开始打印
-
}
复制代码
4、到此就结束了,是否感觉挺简单呀。
小伙伴们就偷着乐吧。
备注:大家有什么疑问欢迎提出来,多多交流。
声明:此篇文档时来自于【狗刨学习网】社区,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。
unity3d 下操作excel
标签:unity unity3d unity3d培训 unity3d极致学院 unity3d游戏开发
原文地址:http://blog.csdn.net/sauwque/article/details/44217715