在ASP.NET中不使用数据库如何获取工作表的列名?
获取Excel工作表的列名
基于你已有的代码,假设列名(表头)位于工作表的第一行(Excel的常规表头位置),可以通过遍历第一行的单元格来获取所有列名,代码如下:
ExcelWorksheet worksheet = package.Workbook.Worksheets[0]; var columncount = worksheet.Dimension.Columns; var rowcount = worksheet.Dimension.Rows; // 存储列名的集合 List<string> columnNames = new List<string>(); // 遍历第一行的所有列,获取列名 for (int col = 1; col <= columncount; col++) { // EPPlus的单元格索引从1开始,Cells[行号, 列号] string colName = worksheet.Cells[1, col].Text; columnNames.Add(colName); } // 示例:输出所有列名 foreach (var name in columnNames) { Console.WriteLine(name); }
补充说明:
- 如果你的表头不在第一行,只需要将代码中的
1替换为表头所在的行号即可(比如表头在第3行,就用worksheet.Cells[3, col]) - 若存在空表头的情况,可以添加判断过滤空值:
if (!string.IsNullOrWhiteSpace(colName)) columnNames.Add(colName);
内容的提问来源于stack exchange,提问作者Neelima
相关产品推荐
相关产品推荐

