Задача — вставить строку любой длины в новый файл .doc (не .docx). Это означает создание нового файла .doc и запись в него моей строки. Я попробовал использовать пакет NuGet NPOI.HWPF для этой задачи (пример ниже).
Я столкнулся с проблемой: для создания нового файла необходимо открыть существующий файл в качестве шаблона для записи текста, а затем сохраните файл как новый. Однако если в шаблоне нет места для текста, он ничего не напишет.
Кроме того, при попытке запуска программы постоянно получаю сообщение:
Свойство, как утверждается, заканчивается (29) до начала! Сбрасываю начало и надеюсь на лучшее.
Не могли бы вы помочь мне разобраться, как решить эту задачу? Я открыт для использования других библиотек, но для них не требуется лицензия.
Код: Выделить всё
using NPOI.HWPF;
namespace ConsoleApp4;
class Program
{
static void Main(string[] args)
{
string filePathEmptyDoc = "/home/evgeniy/test/empty.doc";
string filePathNewDoc = "/home/evgeniy/test/newDoc.doc";
string content = "test text";
using (FileStream fs = new FileStream(filePathEmptyDoc, FileMode.Open, FileAccess.Read))
{
NPOI.HWPF.HWPFDocument doc = new HWPFDocument(fs);
NPOI.HWPF.UserModel.Range range = doc.GetRange();
range.InsertBefore(content);
using (FileStream ofs = new FileStream(filePathNewDoc, FileMode.Create, FileAccess.Write))
{
doc.Write(ofs);
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... text-to-it
Мобильная версия