1

我选择了 ExcelDataReader 库来使用 C# 读取 .XLS 和 .XLSX 文件。ExcelDataReader 在我的本地和部署服务器环境中完美地处理这两种文件格式。

我遇到了问题,如何从给定的 Excel 文件中获取所有行 ID?

输入 Excel 文件:

在此处输入图像描述

我想要像这样的数据集格式输出

在此处输入图像描述

4

1 回答 1

2

让我们通过代码来解释

    using (var stream = System.IO.File.Open(Server.MapPath("yourExcelfileName.xlsx"), FileMode.Open, FileAccess.Read))
    {
        using (var reader = ExcelDataReader.ExcelReaderFactory.CreateReader(stream))
        {
            var conf = new ExcelDataSetConfiguration()
            {
                ConfigureDataTable = a => new ExcelDataTableConfiguration
                {
                    UseHeaderRow = true
                }
            };
            var dataSet = reader.AsDataSet(conf);
            var sheet = dataSet.Tables["sheetName"].Rows.Cast<DataRow>(); // instead of sheetName you can use Index of it like 0 ,1 , ...
            foreach (var row in sheet)
            {
                // some code
                var rowId = row.Table.Rows.IndexOf(row);
                var rowValueByHeaderFieldName = row["HeaderFieldName"]; // you can also use index instead of HeaderFieldName like row[1] , ...
                // some code
            }
        }
    }

希望这有帮助;)

于 2020-09-12T05:11:59.367 回答