Чтение / запись файлов Excel непосредственно в / из памяти - PullRequest
2 голосов
/ 17 марта 2010

Несколько человек окольным путем спросили, но я еще не нашел подходящего решения.Есть ли способ открыть файл Excel прямо из памяти (например, байт [])?Кроме того, есть ли способ записать файл непосредственно в память?Я ищу решения, которые не будут включать жесткий диск или манипулирование временными файлами.Заранее спасибо за любые предложения.

1 Ответ

0 голосов
/ 18 марта 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...