【发布时间】:2018-04-16 02:15:13
【问题描述】:
我正在尝试使用 OpenXML 生成一个简单的 XLSX 文件,但是当我打开文件时出现错误,并且日志文件的 repairedRecord 部分中的唯一信息是:
修复的记录:来自 /xl/worksheets/sheet1.xml 部分的单元格信息
奇怪的是,我尝试编写的所有单元格都具有我期望它们具有的值。我现在只是想写一个标题行,其中headers 只是一个IEnumerable<string>:
using (var doc = SpreadsheetDocument.Create(filename, SpreadsheetDocumentType.Workbook)) {
var workbookPart = doc.AddWorkbookPart();
workbookPart.Workbook = new Workbook();
var worksheetPart = workbookPart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet();
var sheets = workbookPart.Workbook.AppendChild(new Sheets());
var sheet = new Sheet {
Id = workbookPart.GetIdOfPart(worksheetPart),
SheetId = 1,
Name = "Sheet 1"
};
sheets.Append(sheet);
workbookPart.Workbook.Save();
var sheetData = worksheetPart.Worksheet.AppendChild(new SheetData());
var row = new Row { RowIndex = 1 };
var column = 1;
foreach (var header in headers)
row.AppendChild(new Cell {
CellReference = GetColumnLetter(column++) + "1",
DataType = CellValues.SharedString,
CellValue = new CellValue(header)
});
sheetData.Append(row);
workbookPart.Workbook.Save();
}
【问题讨论】:
标签: openxml openxml-sdk