使用 ClosedXML 我想创建一个 Excel 文件,其中包含一个 Excel 表格。我尝试过
List<string[]> rows = new();
rows.Add(new string[] { "Id", "Title" }); // this is the header
rows.Add(new string[] { "1", "Hello world" });
rows.Add(new string[] { "2", "Hello world again" });
using var wb = new XLWorkbook();
var ws = wb.AddWorksheet();
ws.Cell(1, 1).InsertTable(rows);
wb.SaveAs("myfile.xlsx");
那么,我该如何解决这个问题呢?当然,我可以拆分标题(
rows
中的第一项)和其余数据,但我仍然不知道如何告诉 ClosedXML 用于表的列名?
如果您希望表具有命名标题而不是匿名字符串数组,则似乎
InsertTable
依赖于类型信息:
record Item(string Id, string Title);
List<Item> rows = new();
rows.Add(new Item("1", "Hello world"));
rows.Add(new Item("2", "Hello world again"));
using var wb = new XLWorkbook();
var ws = wb.AddWorksheet();
ws.Cell(1, 1).InsertTable(rows);
wb.SaveAs("myfile.xlsx");
请参阅文档中相关部分。