【发布时间】:2014-01-08 09:30:40
【问题描述】:
我想将新创建的 Excel 保存在 MemoryStream 中。这是我的代码:
using Excel = Microsoft.Office.Interop.Excel;
...
public void Create(){
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
//Complete xlWorkSheet
MemoryStream ms = new MemoryStream();
xlWorkBook.SaveAs(ms);
xlWorkBook.Close(false, misValue, misValue);
xlApp.Quit();
}
问题是当我在 xlWorkBook.SaveAs(ms) 之后断点时,ms 为空(长度为 0)。此外,在保存时,会在 PC 上创建一个文件“System.IO.MemoryStream”(在文件夹 Documents 中)。另外,我尝试了 ExportAsFixedFormat 并且效果很好(但文档保存在 PC 上)。 那么,SaveToStream 在这里就不存在了。
我正在 Visual Studio 2012 和 Dotnet 4.5 中开发应用程序 Web ASP.NET MVC4。语言是 C#。 可以将工作簿保存在 memoryStream 中而不保存在 PC 上吗?
谢谢,
【问题讨论】:
标签: c# visual-studio-2012 memorystream