在unity中读取Excel的xlsx格式文件

      遇到了需要读表格的需求,因为之前操作读取csv文件比较熟悉,本来也想把表格转成csv格式读取,但是实际操作过程中发现,表格中的内容是有逗号的,一整段文本里都有没有任何规律的逗号,而读csv文件格子间是用逗号分隔的,所以用这个方法会把一个格子里有逗号的文本分成几个部分,这不是我期望的。所以我查了下用unity直接读取xlsx表格的方法。在这儿记录下来。

using UnityEngine;
using System.Collections;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
using Excel;
using System.Data;

public class ReadExcel:MonoBehaviour  {


    public string ExcelPathName;

    void Start() {
        GameReadExcel(ExcelPathName);
    }

    /// <summary>
    /// 只读Excel方法
    /// </summary>
    /// <param name="ExcelPath"></param>
    /// <returns></returns>
    public static void GameReadExcel(string ExcelPath)
    {
        FileStream stream = File.Open(Application.dataPath + ExcelPath, FileMode.Open, FileAccess.Read);
        IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);

        DataSet result = excelReader.AsDataSet();

        int columns = result.Tables[0].Columns.Count;//获取列数
        int rows = result.Tables[0].Rows.Count;//获取行数


        //从第二行开始读
        for (int i = 1; i < rows; i++)
        {
            for (int j = 0; j < columns; j++)
            {
                string nvalue = result.Tables[0].Rows[i][j].ToString();
                Debug.Log(nvalue);
            }
        }

    }
}
其中需要注意的是这个需要引用

这几个封装好的dll,前面俩的官网下载地址:http://exceldatareader.codeplex.com/

system.data.dll的路径在unity安装路径下的Editor\Data\Mono\lib\mono\unity 这个路径下

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值