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);
     }
 }

结尾:

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

相关推荐
野区捕龙为宠10 分钟前
unity 实现3D空间音效特性
3d·unity·游戏引擎
老朱佩琪!1 小时前
Unity外观模式
unity·游戏引擎·外观模式
程序员茶馆1 小时前
【unity】Shader艺术之unity内置变量个性化控制
unity·游戏引擎
CreasyChan1 小时前
unity射线与几何检测 - “与世界的交互”
算法·游戏·3d·unity·数学基础
CreasyChan2 小时前
unity矩阵与变换 - “空间转换的魔术”
unity·矩阵·c#·游戏引擎
fcm192 小时前
pico之调试unity项目
unity·vr·pico
WarPigs2 小时前
Unity生命周期函数笔记
unity·游戏引擎
Leoysq2 小时前
3Dmax 导入Unity 的设置
unity
nnsix2 小时前
Unity SenseGlove力反馈手套 基础配置
java·unity·游戏引擎
CodeCraft Studio3 小时前
Excel处理控件Aspose.Cells教程:使用C#在Excel中创建气泡图
信息可视化·c#·excel·aspose·excel api库·excel气泡图·excel组件库