我试着用下面的代码用openXML在C#中创建xlsx文件:
if (!File.Exists(@SpreadSheetFile))
{
try
{
// Create a spreadsheet document by supplying the filepath.
// By default, AutoSave = true, Editable = true, and Type = xlsx.
SpreadsheetDocument spreadsheetDocument = SpreadsheetDocument.Create(SpreadSheetFile, SpreadsheetDocumentType.Workbook);
// Add a WorkbookPart to the document.
WorkbookPart workbookpart = spreadsheetDocument.AddWorkbookPart();
workbookpart.Workbook = new Workbook();
// Add a WorksheetPart to the WorkbookPart.
WorksheetPart worksheetPart = workbookpart.AddNewPart<WorksheetPart>();
worksheetPart.Worksheet = new Worksheet(new SheetData());
// Add Sheets to the Workbook.
Sheets sheets = spreadsheetDocument.WorkbookPart.Workbook.AppendChild<Sheets>(new Sheets());
// Append a new worksheet and associate it with the workbook.
Sheet sheet = new Sheet() { Id = spreadsheetDocument.WorkbookPart.GetIdOfPart(worksheetPart), SheetId = 1, Name = sheetName };
sheets.Append(sheet);
workbookpart.Workbook.Save();
// Close the document.
spreadsheetDocument.Close();
isNewFileAndSheetCreated = true;
}
catch (Exception ee)
{
throw new System.InvalidOperationException(SpreadSheetFile + " tidak dapat dibuat" + Environment.NewLine + ee.Message);
}
无法在microsoft office 2016中打开,但在wps office中打开。请帮帮忙,代码有什么问题吗?
发布于 2017-10-04 01:03:05
解决了,我在github中找到后,我更新了openXML到2.7版本。上面写着:
新闻:这个repo上的Office2016分支包含Open-Xml-SDKv2.7的预览,它以文件格式支持Office2016扩展。
我使用的是从微软网站下载的2.5版本,(我认为)该版本不支持office 2016。问题已经解决了。
https://stackoverflow.com/questions/46548786
复制相似问题