Unity使用Epplus读取Excel文件使用方法以及错误解决

直接上dll链接:https://pan.baidu.com/s/1fIwXfFyBzKTBbicEZ0SMig?pwd=ztxr 
提取码:ztxr

下载好后直接放入Plugins文件夹下  如果没有就创建一个 如下图所示

读取代码如下

    /// <summary>
    /// 按行读取返回 n行k列
    /// </summary>
    /// <param name="fileFullPath"></param>
    /// <param name="sheetIndex"></param>
    /// <returns></returns>
    public static List<List<string>> ReadExcel_RwoFront(string fileFullPath, int sheetIndex = 1, int startRow = 0)
    {

        var fs = new FileStream(fileFullPath, FileMode.Open, FileAccess.Read);
        var excel = new ExcelPackage(fs);
        var sheet = excel.Workbook.Worksheets[sheetIndex];
        var row = sheet.Dimension.End.Row;
        var col = sheet.Dimension.End.Column;
        List<List<string>> rowList = new List<List<string>>(row);
        for (var i = startRow; i < row; i++)
        {
            List<string> colList = new List<string>(col);

            for (var j = 0; j < col; j++)
            {
                if (sheet.Cells[i + 1, j + 1].Value == null)
                    colList.Add("");
                else
                    colList.Add(sheet.Cells[i + 1, j + 1].Value?.ToString());
            }
            rowList.Add(colList);
        }
        excel.Dispose();
        fs.Dispose();
        return rowList;
    }

注意目前在编辑器状态是能读取正常 但是打包后就报错,下面是解决办法

先打开你项目使用的Unity版本安装路径Editor\Data\MonoBleedingEdge\lib\mono\unityjit-win32

//unityjit-win32  unityjit-linux unityjit-macos  三个文件夹 打包发布的运行目标系统是什么就选那个文件夹

然后把 I18N.dll  与I18N.West.dll 放到 Unity的Plugins文件夹下 重新打包即可

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用EPPlus插件来读取Excel文件,并在Unity中处理Excel数据。以下是使用EPPlus读取Excel文件的简单示例代码: ```csharp using System.IO; using OfficeOpenXml; public class ExcelReader { public void ReadExcel(string filePath) { FileInfo fileInfo = new FileInfo(filePath); ExcelPackage excelPackage = new ExcelPackage(fileInfo); // 读取第一个工作表 ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets[0]; // 读取单元格数据 int rowNumber = 1; int columnNumber = 1; string cellValue = worksheet.Cells[rowNumber, columnNumber].Value.ToString(); Debug.Log(cellValue); // 读取整个工作表数据 int rowCount = worksheet.Dimension.Rows; int columnCount = worksheet.Dimension.Columns; for (int i = 1; i <= rowCount; i++) { for (int j = 1; j <= columnCount; j++) { string value = worksheet.Cells[i, j].Value.ToString(); Debug.Log(value); } } } } ``` 在这个示例代码中,我们首先创建了一个ExcelPackage对象,然后打开Excel文件读取第一个工作表。接下来,我们可以通过worksheet.Cells[rowNumber, columnNumber]访问单元格数据,也可以通过worksheet.Dimension.Rows和worksheet.Dimension.Columns读取整个工作表的数据。最后,我们可以在Unity使用Debug.Log输出读取到的Excel数据。 需要注意的是,EPPlus插件需要安装.NET Framework 4.5或更高版本。另外,由于Unity使用的是Mono运行时,可能需要在Unity中手动添加对System.IO.Compression.ZipFile的引用,才能正确使用EPPlus插件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值