Unity/C#使用EPPlus读取和写入Excel

简介:本篇使用EPPlus来将数据写入Excel,如果需要使用NPOI那可以阅读我之前文档使用NPOI创建及写入数据_npoi 模板 写数据-CSDN博客

一、安装EPPlus

这里使用 .unitypackage 文件形式安装

1.1下载NuGetForUnity.unitypackage

github进行搜索下载

下载后拖入Unity项目

二、配置EPPlus

2.1打开菜单NuGet->Manage NuGet Packages

2.2搜索EPPlus并下载

三、Unity写入Excel

3.1创建Excel.xlsx

创建streamingAssets文件夹并且拖入一个示例

3.2编写脚本

cs 复制代码
using System.IO;
using UnityEngine;
using OfficeOpenXml;
public class ExcelTwo : MonoBehaviour
{
    void Start()
    {
        CreateExcel();
    }
    private void CreateExcel()
    {
        string path = Application.streamingAssetsPath + "/" + "test.xlsx";//读取文件
        FileInfo newFile = new FileInfo(path);//创建新的Excel文件
        if (newFile.Exists)
        {
            newFile.Delete();
            newFile = new FileInfo(path);//创建新的Excel文件
        }
        ExcelPackage package = new ExcelPackage(newFile);
        ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("测试示例");//创建工作簿
        worksheet.Row(1).Height = 40;//设置行高
        worksheet.Cells[1, 1].Value = "Hello";//内容
        package.Save();//保存
    }
}

四、Unity读取Excel

4.1编写脚本

cs 复制代码
 private void ReadExcel()
 {
     string path2 = Application.streamingAssetsPath + "/" + "test.xlsx"; // 设置 Excel 文件的路径
     Debug.Log("Excel 文件路径: " + path2);
     // 确保文件存在
     if (File.Exists(path2))
     {
         // 创建 ExcelPackage 实例
         using (ExcelPackage package2 = new ExcelPackage(new FileInfo(path2)))
         {
             // 获取第一个工作表
             ExcelWorksheet worksheet = package2.Workbook.Worksheets[0];
             // 获取第二个工作表
             ExcelWorksheet worksheet1 = package2.Workbook.Worksheets[1];
             // 读取第一个工作表单元格 A1 的值
             string cellValue = worksheet.Cells[1, 1].Value.ToString();
             // 读取第二个工作表单元格 A1 的值
             string cellValue1 = worksheet1.Cells[1, 1].Value.ToString();
             Debug.Log("单元格 A1 的值: " + cellValue);
             Debug.Log("单元格 A1 的值: " + cellValue1);
         }
     }
     else
     {
         Debug.LogError("找不到 Excel 文件: " + path2);
     }
 }

结尾:

有任何错误请指出,补充请评论,看到会第一时间回复,谢谢。

相关推荐
mxwin12 小时前
Unity Shader SRP深入理解内置渲染管线与 URP/HDRP 的底层架构差异
unity·游戏引擎·单一职责原则
mxwin16 小时前
Unity Shader 渲染管线深度解析 — Shader 三阶段
unity·游戏引擎·shader·uv
mxwin16 小时前
Unity Shader 数学与几何变换 深入理解渲染管线中的坐标系转换:从模型空间到屏幕空间的完整变换链
unity·游戏引擎·shader
心前阳光18 小时前
Unity使用Luban之Luban配置
unity
mxwin18 小时前
Unity ShaderLab 完全指南深入了解 Unity 特有的声明式语法,用于定义材质面板、渲染回退、细节层次等核心功能
unity·游戏引擎·材质·shader
开开心心就好20 小时前
电子教材下载工具,支持多链接批量下载
windows·随机森林·计算机视觉·pdf·计算机外设·逻辑回归·excel
qq13153062420 小时前
Unity 渲染优化核心总结(Draw Call / SetPass / Batch 全体系)
unity·游戏引擎·batch
码上上班21 小时前
k8s中安装metrics,实现hpa
容器·kubernetes·excel
美团骑手阿豪21 小时前
C#语法:HashSet与List对比,适合场景
unity·c#
平行云PVT1 天前
数字孪生信创云渲染技术解析:从混合信创到全国产化架构
linux·unity·云原生·ue5·图形渲染·webgl·gpu算力