原地址:http://www.colabug.com/thread-1146390-1-1.html

因项目需要,需在unity下实现写入excel、打印功能。因之前在winform里操作过excel,故顺心应手===
说明:本次只实现了简单操作步骤,在实际项目需要中,在此基础上扩展即可。
需求:
1、将各种统计数据插入到excel表格中。文字、数字、图片、时间…………
2、打印excel表格
==我们首先来做第一步吧。
操作excel,我一直使用的是NPOI插件,自我感觉该插件非常不错,从java移植到.NET下的。抱着一颗激动的心开始流程……
1、将NPOI.DLL文件拷贝到unityAssetsPlugins下
(此处注意事项: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;
代码展示:
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 下操作excel 与打印的更多相关文章

  1. 在 VS2008 下操作 Excel 的方法总结

      这些天做个软件,需要读取 Excel 并导入到数据库中,所以研究了一下在 VC 下操作 Excel 的方法,这里做个总结,以作备忘. 一.最常用的 OLE 自动化方式 这个方式应该说是功能最全的方 ...

  2. 如何在没有安装微软Excel环境下操作Excel文件?

    在以前接触的项目中,由于很多客户对微软Excel的操作比较熟练,客户经常要求系统支持对Excel文件的读写.用.NET传统方法对Excel进行读写时,往往会涉及到不同版本兼容的问题,导致在本地测试一切 ...

  3. Qt QAxObject操作excel文件过程总结(转):

    正好同事问道Qt下操作excel. 转自:http://blog.csdn.net/a156392343/article/details/48092515 配制方面: 1.确保Excel软件在本地服务 ...

  4. NET平台下的Excel编程|C#操作Excel|Application和ApplicationClass的联系和区别

    NET平台下的Excel编程|C#操作Excel|Application和ApplicationClass的联系和区别 1. Interop含义Interop是互操作的含义.Microsoft.Off ...

  5. 一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器

    1. 血案由来 近期我在为Lazada卖家中心做一个自助注册的项目,其中的shop name校验规则较为复杂,要求:1. 英文字母大小写2. 数字3. 越南文4. 一些特殊字符,如“&”,“- ...

  6. C# NPOI操作Excel(下)

    根据自己项目需求编写,仅供参考 个人建议:使用Excel模板进行导出操作.尽量避免自己生成Excel(既繁琐又容易出BUG).大多情况下导出Excel都是固定格式,使用模板导出会方便很多. publi ...

  7. .net core下对于Excel的一些操作及使用

    原文:.net core下对于Excel的一些操作及使用 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.cs ...

  8. Python 操作Excel之通过xlutils实现在保留原格式的情况下追加写入数据

    在Python操作Excel 的模块有 xlrd.xlwt.xlutils等. xlrd:读取Excel文件数据 xlwt:写入Excel 数据,缺点是Excel格式无法复用,为了方便用户,写入的话, ...

  9. VBS操作Excel常见方法

    VBS操作Excel常见方法 作者: 字体:[增加 减小] 类型:转载 时间:2009-11-13我要评论 VBS控制Excel常见方法,需要的朋友可以参考下. dim oExcel,oWb,oShe ...

随机推荐

  1. appium +python api 新手

    发现一个网址的内容比较好,就转过来了   #默认系统语言对应的Strings.xml文件内的数据. get_app_string() #查找某一个语言环境对应的字符串文件Strings.xml内数据 ...

  2. 《编写高质量代码》CSS部分总结

    如何组织CSS 三层结构:base+common+page 分层目的:减少代码量:便于多人开发和维护 1.base层 最底层,一般设置文件为只读,与具体的UI无关,提供: reset功能.因为浏览器对 ...

  3. C#学习笔记8:HTML和CSS基础学习笔记

    <!-- 1.<P>...</P>段落标签 2.<br/>折行标签. 3.<img src="" height="*px& ...

  4. HW--漂亮度2(测试通过)

    总结:几个函数的使用 (1)  int num=Integer.parseInt(str[0]); //将第一个字符串转成整形数,表示名字个数 (2) String string1=str[i].to ...

  5. HTML——表格table标签,tr或者td

    表格定义和用法 <tr> 标签定义 HTML 表格中的行. tr 元素包含一个或多个 th 或 td 元素. HTML 与 XHTML 之间的差异 在 HTML 4.01 中,tr 元素的 ...

  6. JavaScript高级程序设计(十):数组类型

    先导: 访问对象属性使用的都是点表示法.另外,我们还可以使用方括号表示法来访问对象的属性.在使用方括号的时候,应该将要访问的属性以字符串的形式放到方括号中.这两种方法没有什么区别.但是方括号的优点是可 ...

  7. c# 中模拟一个模式匹配及匹配值抽取

    摘一段模式的说明, F#的: msdn是这么描述它的:“模式”是用于转换输入数据的规则.模式将在整个 F# 语言中使用,采用多种方式将数据与一个或多个逻辑结构进行比较.将数据分解为各个构成部分,或从数 ...

  8. mybatis学习(一)一个在idea下的实例

    今天总结的是mybatis,首先说mybatis是什么? MyBatis 是一个简化和实现了 Java 数据持久化层(persistence layer)的开源框架,它抽象了大量的 JDBC 冗余代 ...

  9. 阿里云 CentOS 安装JDK

    初用阿里云,使用centOS linux64操作系统 . 自己上传jdk文件总是安装失败,原因估计是因为我的网络不好,导致文件损坏. 解决办法,直接在linux命令行模式下,到官网下载 jdk,命令如 ...

  10. apply()与call()的区别

    一直都没太明白apply()与call()的具体使用原理,今日闲来无事,决定好好研究一番. JavaScript中的每一个Function对象都有一个apply()方法和一个call()方法,它们的语 ...