Excel не поддерживает сохранение в память, по крайней мере, то, что мне не удалось найти - и я посмотрел, потому что я мог бы его использовать.
SpreadsheetGear for .NET может сохранять и загружать из байтового массива. Вот простой пример:
using System;
using SpreadsheetGear;
namespace Program
{
class Program
{
static void Main(string[] args)
{
// Create a simple Hello World workbook.
IWorkbook workbook = Factory.GetWorkbook();
IWorksheet worksheet = workbook.Worksheets[0];
worksheet.Cells["A1"].Value = "Hello World";
// Save to memory.
byte[] data = workbook.SaveToMemory(FileFormat.OpenXMLWorkbook);
// Load from memory and output the contents of A1.
workbook = Factory.GetWorkbookSet().Workbooks.OpenFromMemory(data);
worksheet = workbook.Worksheets[0];
Console.WriteLine("A1={0}", worksheet.Cells["A1"].Value);
}
}
}
Вы можете посмотреть живые образцы SpreadsheetGear здесь и загрузить бесплатную пробную версию здесь , если хотите попробовать сами.
Отказ от ответственности: я владею SpreadsheetGear LLC