• unity3d 下操作excel 与打印


    因项目需要,需在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;<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: est.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、到此就结束了,是否感觉挺简单呀。 小伙伴们就偷着乐吧。

    备注:大家有什么疑问欢迎提出来,多多交流。

      

  • 相关阅读:
    CodeForce 677C
    1A -- Theatre Square
    CodeForce 677B Vanya and Food Processor
    CodeForce 680C Bear and Prime 100
    1B -- Spread sheet
    socket.io 推送
    网站性能测试
    openlayers/// Puppeteer.js
    div 光标处插入内容
    emjoi 表情
  • 原文地址:https://www.cnblogs.com/sling/p/3721757.html
Copyright © 2020-2023  润新知