Я хотел бы сохранить недавно созданный Excel в MemoryStream. Вот мой код:Как написать книгу 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 (мс), мс пусто (длина 0). Кроме того, при сохранении на ПК создается файл «System.IO.MemoryStream» (в папке Documents). Плюс, я попробовал ExportAsFixedat, и он работал хорошо (но документ сохранен на ПК). Тогда SaveToStream здесь не существует.
Я разрабатываю приложение Web ASP.NET MVC4 в Visual Studio 2012 и Dotnet 4.5. Язык C#. Можно сохранить workBook в memoryStream без сохранения его на ПК?
Thanks,
Здравствуйте, Nil23, я попробовал вариант, который вы предложили. Excel.Решетка xlWorkSheet; // Завершите xlWorkSheet xlWorkSheet.UsedRange.Copy (Type.Missing); MemoryStream ms = new MemoryStream(); xlWorkBook.SaveAs (мс); Это все еще не работает ... – F2O
Я заметил что-то: Я думаю, что ** xlWorkBook.SaveAs (ms) ** можно использовать, только если ** xlWorkBook = new XLWorkbook() ** (от ClosedXML) ... ClosedXML доступен в Visual Studio 2012? Если да, то какая библиотека? – F2O