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

结尾:

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

相关推荐
xcLeigh21 小时前
Unity基础:Instantiate实例化——在运行时动态创建游戏物体
游戏·unity·游戏引擎·教程·instantiate
用户0332126663671 天前
如何快速拆分超大 Excel 文件【Python 教程】
python·excel
葡萄城技术团队1 天前
在线 Excel 怎么验收:从「能打开」到「能上线」
excel
言乐61 天前
HTML实现Word、Excel、PPT三种可切换背景,可键盘打字、和像素小人交互
html·word·powerpoint·excel·交互
流浪打工人2 天前
Unity3d TimeLine中audio track的使用
unity
淡海水2 天前
02-07-原理篇-GC暂停时间的本质
开发语言·unity·c#·gc·暂停时间
WarPigs2 天前
UI路径配置SO>字典json工作流
ui·unity
Eiceblue2 天前
使用 Python 实现 Excel 行列转置(保留单元格样式)
前端·python·excel
淡海水2 天前
02-06-原理篇-增量式GC与并发GC
算法·unity·c#·并发·gc·增量
开开心心_Every2 天前
内存清理工具定时自动清理开机自启动
java·开发语言·spring·计算机外设·ocr·intellij-idea·excel