Вставка текста в Word на C# (3 способ)
Всем доброго времени суток. На связи Алексей Гулынин. В данной статье я бы хотел рассказать ещё об одном способе добавления информации в документ Word, используя технологию GemBox и язык C#. Конкретно будем работать с библиотекой GemBox.Document.dll). Данная библиотека является платной, но для небольших документов можно её использовать бесплатно. Данная библиотека позволяет работать со следующими типами файлов: docx, doc, pdf, html, xps, rtf и txt.
Ссылка, по которой можно скачать . На сайте имеется очень хорошая документация.
Будем также вставлять текст, используя закладки (Bookmarks).
Добавляем ссылку на эту библиотеку в наш проект. Сразу приведу код:
using System;
using GemBox.Document;
namespace TestProjectWord
{
class Program
{
static void Main(string[] args)
{
DocumentModel doc = null;
try
{
// Путь до файла
string destFileName = @"D:\Test.docx";
string[] data = new string[] { "Alex", "Gulynin", "27" };
// Обязательная строка, указываем, что мы используем лимитированную версию
ComponentInfo.SetLicense("FREE-LIMITED-KEY");
// Загружаем в память наш документ
doc = DocumentModel.Load(destFileName);
// Коллекция закладок
BookmarkCollection wBookmarks = doc.Bookmarks;
// ContentRange - это область содержимого в документе
ContentRange wRange;
int i = 0;
// Пробегаем по всем закладкам в документе
foreach (Bookmark mark in doc.Bookmarks)
{
// Получаем содержимое закладки
wRange = mark.GetContent(false);
// Загружаем туда нужный текст
wRange.LoadText(data[i].ToString());
i++;
}
// Сохраняем изменения в нашем документе
doc.Save(destFileName);
doc = null;
}
catch (Exception ex)
{
doc = null;
Console.WriteLine("Во время выполнения программы произошла ошибка! Текст ошибки: {0}", ex.Message);
Console.ReadLine();
}
}
}
}
Более подробно с данной библиотекой можно ознакомиться на официальном сайте. Удобство её использования также заключается в том, что не нужно устанавливать Microsoft Office. Как мы видим кода столько же, что и при работе с Microsoft Word Object Library и гораздо меньше, чем при работе с OpenXML. С какой библиотекой работать — решать вам.
На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.




