OpenXML - 如何将电子表格文档保存到流中?

Ali*_*eem 5 c# excel openxml

我从流中获取一个 .xlsx 文档(使用SpreadsheetDocument.Open(stream, false)然后将其存储到 Spreadsheetdocument 字段中,以便我稍后可以维护相同的对象。

我有一个保存方法,理想情况下我应该能够将 SpreadsheetDocument 保存到流中。有,document..WorkbookPart.Workbook.Save(stream);但这只是给了我一个空文件,当我只保存第一张表时(使用document.WorkbookPart.WorksheetParts.First().Worksheet.Save(stream);该文件很混乱并且不包含相关信息。如何将电子表格文档保存到流中?

chr*_*ano 0

根据文档,保存并关闭 OpenXml 包以及所有底层部分流。SpreadsheetDocument.Close

更新: 您是否尝试过保存底层流本身?

File.WriteAllBytes(filename, stream.ToArray());
Run Code Online (Sandbox Code Playgroud)