最近在做一个需要导入导出excel表格的功能,在网上查看和参考了一些资料,如quickSheet等,因为时间比较长了,忘了其他参考的作者名称,在这里说声抱歉!!!

首先介绍下功能,随后会上传原工程,喜欢的朋友可以下载查看。

工程目录:

data 目录:导入excel后会把excel生成二进制文件,好处就是会减少文件体积(如果表格过多)

entity : 导入excel后生成的数据实体类,免去大家定义数据格式的麻烦

excel : 里面是具体的代码。

功能:

1,导入功能:

导入相应的excel表格,通过编辑器扩展配置你想生成的数据格式及数据类型,点击生成数据类,就会生成数据实体。

导入代码:

/// <summary>
    /// 获取导入的excel
    /// </summary>
    /// <param name="path"></param>
    /// <param name="sheetName"></param>
    public  void  ImportExcel(string path)
    {
        using (FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
        {
            using (ExcelPackage package = new ExcelPackage(fileStream))
            {
                ExcelWorksheets workSheets = package.Workbook.Worksheets;

ExcelWorksheet workSheet = workSheets[1];

ExcelAddressBase address = workSheet.Dimension;

row = address.Rows;
                column = address.Columns;

List<string> titleList = new List<string>();

titles = new string[column];

//读取excel的第一行
                for (int i = 0; i < column; i++)
                {
                    if (workSheet.Cells[1, i + 1].Value == null)
                    {
                        continue;
                    }
                    titleList.Add(titles[i]);
                }

titles = titleList.ToArray();

for (int i = 0; i < titles.Length; i++)
                {
                    titles[i] = workSheet.Cells[1, i + 1].Value.ToString();
                }

//读取excel中的数据
                buffer = GetBytes(workSheet.Cells);

Debug.Log(buffer.Length);

}
        }
    }

生成的数据实体

2,导出功能:

/// <summary>
    /// 导出excel表到指定路径
    /// </summary>
    /// <typeparam name="T">数据内容类</typeparam>
    /// <typeparam name="K">表头类</typeparam>
    /// <param name="path"></param>
    /// <param name="t"></param>
    /// <param name="k"></param>
    public  void CreateXLSX<T, K>(string path, List<T> t, K k) where T : class where K : class
    {

//需要写入多少行数据
        int count = t.Count;
        //创建文件
        FileInfo info = new FileInfo(path);

if (info.Exists)
        {
            info.Delete();
            info = new FileInfo(path);
        }

//写入内容
        using (ExcelPackage package = new ExcelPackage(info))
        {
            //先创建一个工作表
            ExcelWorksheet sheet = package.Workbook.Worksheets.Add("Sheet1");

FieldInfo[] fields = k.GetType().GetFields();

//写入表头
            for (int i = 1; i < fields.Length + 1; i++)
            {
                sheet.Cells[1, i].Value = fields[i - 1];
            }

//写入具体内容  
            for (int j = 2; j < count + 2; j++)
            {
                //获取到数据类内的所有字段
                Type type = t[j - 2].GetType();
                FieldInfo[] infos = type.GetFields();

for (int i = 1; i < infos.Length + 1; i++)
                {
                    sheet.Cells[j, i].Value = infos[i - 1].GetValue(t[j - 2]).ToString();
                }
            }
            package.Save();
        }
    }

网盘地址 :链接:https://pan.baidu.com/s/1pv9yIFiv4CoXWO2AvWOYsA 
提取码:ng07

unity导入导出excel的功能相关推荐

  1. java excel data 导入数据_java实现导入导出excel数据

    项目需要,要实现一个导入导出excel的功能,于是,任务驱动着我学习到了POI和JXL这2个java操作Excel的插件. 一.POI和JXL介绍 1.POI:是对所有office资源进行读写的一套工 ...

  2. Java导入导出Excel工具类ExcelUtil

    前段时间做的分布式集成平台项目中,许多模块都用到了导入导出Excel的功能,于是决定封装一个ExcelUtil类,专门用来处理Excel的导入和导出 本项目的持久化层用的是JPA(底层用hiberna ...

  3. csv和excel php 解析_PHP 高效导入导出Excel(csv)方法之fgetcsv()和fputcsv()函数

    CSV,是Comma Separated Value(逗号分隔值)的英文缩写,通常都是纯文本文件. 一.CSV数据导入函数fgetcsv() fgetcsv() 函数从文件指针中读入一行并解析 CSV ...

  4. php导出excel2007实例,php导入导出excel实例

    这里实现的PHP导入导出excel功能用到的是开源PHPExcel,执行下面的操作之前请先下载该类库文件,官方网站:http://www.codeplex.com/PHPExcel,官网案例代码很多, ...

  5. java 动态导入excel_java实现导入导出excel数据

    项目需要,要实现一个导入导出excel的功能,于是,任务驱动着我学习到了POI和JXL这2个java操作Excel的插件. 一.POI和JXL介绍 1.POI:是对所有office资源进行读写的一套工 ...

  6. js实现导入导出Excel(结合js-xlsx)

    本文是单纯用前端实现导入导出Excel的功能. 说明: 1.导入要求导入的数据是文本格式. 2.导出是导出json数据到excel文件 demo的githup地址:https://github.com ...

  7. opencart导入导出export/import功能插件

    2019独角兽企业重金招聘Python工程师标准>>> 本版本仅适用于 opencart 1.5.5及 opencart 1.5.5.1,请下载者注意. 功能:网站管理员可以进行批量 ...

  8. java实现导出Excel的功能

    这篇文章主要为大家详细介绍了java实现导出Excel的功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 导出excel是咱Java开发的必备技能啦,之前项目有这个功能,现在将其独立出来,分享一 ...

  9. EasyOffice-.NetCore一行代码导入导出Excel,生成Word

    Excel和Word操作在开发过程中经常需要使用,这类工作不涉及到核心业务,但又往往不可缺少.以往的开发方式在业务代码中直接引入NPOI.Aspose或者其他第三方库,工作繁琐,耗时多,扩展性差--比 ...

  10. ASP.NET Core 导入导出Excel xlsx 文件

    ASP.NET Core 使用EPPlus.Core导入导出Excel xlsx 文件,EPPlus.Core支持Excel 2007/2010 xlsx文件导入导出,可以运行在Windows, Li ...

最新文章

  1. 物理化学 热力学第一定律的概念
  2. 【TensorFlow】tf.nn.softmax_cross_entropy_with_logits 函数:求交叉熵损失
  3. Web最基本的弹出窗口代码(javascript)
  4. 秒后面的单位是什么_为什么兰州马拉松很难跑出好成绩?
  5. vue 浏览器调试 样式如何定位样式_浏览器断点调试-程序员的必修课
  6. 联发科天玑800适配鸿蒙系统,联发科天玑800什么水平
  7. AI 芯片崛起!FPGA 工程师的核心竞争力在哪里?
  8. python高手养成_不要总抱怨它慢了 突破性能瓶颈 找到Python序列筛选数据的最优解...
  9. 禁止微信浏览器的下拉滑动
  10. zabbix安装笔记
  11. 阶段3 1.Mybatis_06.使用Mybatis完成DAO层的开发_7 Mybatis中使用代理Dao的执行过程分析...
  12. CCS6的graph变灰解决办法
  13. CAN分析仪 USBCAN USB转CAN CAN转换调试器接口卡使用指导
  14. Solaris 10系统指南
  15. 如何在Mac设置开机自启程序项,教程在这!
  16. 48搜索相关参数梳理以及bouncing results问题解决方案
  17. java 图片合成 工具类_Java实现的微信图片处理工具类【裁剪,合并,等比例缩放等】...
  18. JAVA初学者必备的基础书籍
  19. Modulation of Lipid Metabolism by Celastrol (文献分享一组-赵倩倩)
  20. 差分技术:LVDS(低压差分信号)、MLVDS(多点低压差分信号)的区别与应用场景

热门文章

  1. java b s用户管理系统_基于B/S的教务信息管理系统
  2. java一行代码实现集合写入Excel表格生成数据
  3. log公式如何用计算机,log计算-计算器怎么算log,如何使用科学计算器中的对数log...
  4. radon变换(c++、OpenCV实现)
  5. python ppt_从 Python 中学习 PPT 制作技巧
  6. deglitch 技术_fdc2214中文资料-技术参考.pdf
  7. 2022年建筑架子工(建筑特殊工种)考试资料及建筑架子工(建筑特殊工种)新版试题
  8. 金蝶云星空根据采购价目表写入自定义采购入库单是否价目表字段
  9. 本科毕业设计论文答辩ppt模板
  10. Zotero文献题录和附件如何导入到NoteExpress?