我选择了 ExcelDataReader 库来使用 C# 读取 .XLS 和 .XLSX 文件。ExcelDataReader 在我的本地和部署服务器环境中完美地处理这两种文件格式。
我遇到了问题,如何从给定的 Excel 文件中获取所有行 ID?
输入 Excel 文件:
我想要像这样的数据集格式输出
我选择了 ExcelDataReader 库来使用 C# 读取 .XLS 和 .XLSX 文件。ExcelDataReader 在我的本地和部署服务器环境中完美地处理这两种文件格式。
我遇到了问题,如何从给定的 Excel 文件中获取所有行 ID?
输入 Excel 文件:
我想要像这样的数据集格式输出
让我们通过代码来解释
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
}
}
}
希望这有帮助;)