使用 EPPlus 插件 在Unity 中进行 Excel 数据表读写

使用 EPPlus 插件 在Unity 中进行 Excel 数据表读写

老规矩,直接上代码:
很简单,自己看一下就会。

EPPlus.dll  文件 自己下载也行,下载我的也行
都要把这个 EPPlus.dll 文件放到 Assets 文件夹下。
如果打包处理出错的话就把去下载我的文件吧。
把我给你的文件统一放到 Unity Assets 文件夹下就行了。

这个是打包出错时放的EPPlus支持库放到同一个文件夹内就行了
(列:资产/ EPPlus / ******);这个版本是2019.3.2f1请立即获取iTunes的库
不同的版本请立即获取iTunes库也是这六个文件在
Unityy_Editor \ 2019.3.2f1 \ Editor \ Data \ MonoBleedingEdge \ lib \ mono \ unity文件夹下。

链接: Unity_EPPlus 支持库

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using OfficeOpenXml;
using UnityEditor;
using System.IO;
using OfficeOpenXml.Style;

/// <summary>
/// Excel  数据表读写 
/// </summary>


public class EPPlusExcel_ZH : MonoBehaviour
{
    //文件夹路径
    private string _FilePath;
    //文件夹路径存储
    private FileInfo _FileInfo;

    ExcelWorksheet _Worksheet;
    ExcelWorksheet _WorksheetNew;

    void Start()
    {
        //路径
        _FilePath = Application.streamingAssetsPath + "/Epplus.xlsx";
        //获取Excel 文件路径
        _FileInfo = new FileInfo(_FilePath);
        //开启协程
        StartCoroutine(EPPlus());
    }

    private IEnumerator EPPlus()
    {
        //Excel 数据赋予
        using (ExcelPackage _ExcelPackage = new ExcelPackage(_FileInfo))
        {
            if (_ExcelPackage.Workbook.Worksheets["Epplus_Test"] == null)
            {
                //表格创建
                _WorksheetNew = _ExcelPackage.Workbook.Worksheets.Add("Epplus_Test");
            }

            //获取数据表中第一张表格数据
            _Worksheet = _ExcelPackage.Workbook.Worksheets[1];

            //获取数据表中第一行第一列数据
            string _Message = _Worksheet.Cells[1, 1].Value.ToString();

            //数据表写入
            _Worksheet.Cells[1, 1].Value = "A1";
            _Worksheet.Cells["A2"].Value = "A2";
            _Worksheet.SetValue(2, 2, "EPPlus");

            //这是乘法的公式,意思是第三列乘以第四列的值赋值给第五列
            _Worksheet.Cells["E2"].Formula = "C2*D2";

            //这是求和公式,意思是第二行第三列的值到第四行第三例的值求和后赋给第五行第三列  并转移到 五行五列
            _Worksheet.Cells[5, 3, 5, 5].Formula = string.Format("SUBTOTAL(9,{0})", new ExcelAddress(2, 3, 4, 3).Address);


            //获取一个区域,区域范围是第七行第一列到第七行第五列
            using (var _Range = _WorksheetNew.Cells[7, 1, 7, 5])
            {
                //粗体
                _Range.Style.Font.Bold = true;
                //设置单元格样式为无样式
                _Range.Style.Fill.PatternType = ExcelFillStyle.None;
                //设置单元格底色为红色
                _Range.Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.Red);
                //设置单元格字体颜色为黄色
                _Range.Style.Font.Color.SetColor(System.Drawing.Color.Yellow);
            }
            
            //获取总Sheet页
            int _SheetCount = _ExcelPackage.Workbook.Worksheets.Count;
            //最大行
            int _MaxRowNum = _Worksheet.Dimension.End.Row;
            //最小行
            int _MinRowNum = _Worksheet.Dimension.Start.Row;
            //最大列
            int _MaxColumnNum = _Worksheet.Dimension.End.Column;
            //最小列
            int _MinColumnNum = _Worksheet.Dimension.Start.Column;

            //表格删除
            _ExcelPackage.Workbook.Worksheets.Delete("Epplus_Test");

            //保存数据表
            _ExcelPackage.Save();
            
        }
#if UNITY_EDITOR
        //资源刷新
        AssetDatabase.Refresh();

        // 保存所有修改
        AssetDatabase.SaveAssets();
#endif
        yield return null;
    }
}

暂时先这样吧,如果实在看不明白就留言,看到我会回复的。
路长远兮,哈哈哈,与君共勉。
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Maddie_Mo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值