Редактировать существующий файл Excel C # npoi

Я хочу с помощью консольного приложения C # открыть существующий файл Excel и добавить в него содержимое. НКОИ 2.1.1.0

Мой первый подход состоял в том, чтобы просто добавить значение к последней фигуре ячейки, которую я решил, что это решит мою другую проблему.
Это правильно прочитает файл с новым содержимым, но не сохранит его.

Выход:

Msgstr "Невозможно получить доступ к закрытому файлу."

HSSFWorkbook hssfwb;
using (FileStream file = new FileStream(@"c:\testfile.xls", FileMode.Open, FileAccess.ReadWrite))
{
    hssfwb = new HSSFWorkbook(file);
    ISheet sheet = hssfwb.GetSheetAt(0);
    IRow row = sheet.GetRow(0);

    sheet.CreateRow(row.LastCellNum);
    ICell cell = row.CreateCell(row.LastCellNum);
    cell.SetCellValue("test");

    for (int i = 0; i < row.LastCellNum; i++)
    {
        Console.WriteLine(row.GetCell(i));
    }
    hssfwb.Write(file);
    file.Close();
}

Я попытался добавить следующее, но это привело к пустому файлу, который не открывается.

MemoryStream mstream = new MemoryStream();
hssfwb.Write(mstream);

byte[] bytes = new byte[mstream.Length];
mstream.Read(bytes, 0, (int)mstream.Length);
file.Write(bytes, 0, bytes.Length);
file.Close();
mstream.Close();

Я также попытался поместить hssfwb один в область применения, изменил режим файла на Append / openorcreate / truncate, добавил проверку записи без какого-либо результата.

Однако одним из решений было бы прочитать файл, преобразовать его в таблицу данных, создать новый файл Excel и заполнить его данными.

Что я делаю неправильно? Может кто-нибудь пролить некоторый свет на это? Я посмотрел на пакет Npoi Example напрасно.

Ответы на вопрос(2)

Ваш ответ на вопрос