C# Edytuj Word (przyklad kodu, samouczek dla deweloperów)
Tworzenie, edycja i zarządzanie dokumentami WORDa to częste wymagania wielu aplikacji. Chociaż istnieje kilka sposobów tworzenia i edycji dokumentów WORDa w języku C#, jedną z najskuteczniejszych metod jest wykorzystanie usług Microsoft Interop. Dzięki temu narzędziu można z łatwością obsługiwać dokumenty WORDa programowo.
Edytuj dokumenty WORD i DOCX
- Pobierz bibliotekę C# do edycji dokumentów WORD i DOCX
- Utwórz pusty dokument WORDa w kodzie
- Dodaj nowy tekst do dokumentu WORD
- Edytuj tekst w nowym lub istniejącym dokumencie
- Wyeksportuj pliki DOCX do wybranej lokalizacji
Wymagania wstępne
Przed skonfigurowaniem środowiska i rozpoczęciem pracy z kodem upewnij się, że spełniasz następujące wymagania wstępne:
- Visual Studio: Upewnij się, że masz zainstalowane Visual Studio na swoim komputerze. Jeśli nie, pobierz i zainstaluj je z oficjalnej strony Microsoftu.
- Microsoft WORD: Ponieważ korzystamy z Microsoft Interop, na komputerze powinno być zainstalowane oprogramowanie MS WORD. Usługa Interop współpracuje z aplikacją WORD zainstalowaną na komputerze użytkownika.
- Podstawowa znajomość języka C#: Niezbędne jest zrozumieniuiuiuiuie podstawowych pojęć języka C#.
- .NET Framework: Upewnij się, że Twoje Visual Studio obsługuje .NET Framework, ponieważ nasza aplikacja będzie na nim oparta.
Konfiguracja środowiska
Zacznij od otwarcia aplikacji Visual Studio. Po otwarciu pojawi się ekran powitalny.
1. Utwórz nową aplikację konsolową .NET Framework
- Kliknij "Utwórz nowy projekt".
- Wpisz "Console App (.NET Framework)" w polu wyszukiwania.
- Z wyników wybierz "Aplikacja konsolowa (.NET Framework)" i kliknij przycisk "Dalej".
- Nadaj nazwę swojemu projektowi, a następnie kliknij przycisk "Utwórz".
Po wykonaniu tych kroków Visual Studio wygeneruje dla Ciebie nową aplikację konsolową .NET Framework. W pliku Program.cs znajduje się podstawowy szablon z metodą Main, która stanowi punkt wejścia dla aplikacji konsolowych.
2. Zainstaluj Microsoft.Office.Interop.Word za pomocą menedżera pakietów NuGet
NuGet to menedżer pakietów dla platformy .NET, zintegrowany z programem Visual Studio. Oto jak można go użyć do zainstalowania pakietu Microsoft.Office.Interop.Word:
- W programie Visual Studio przejdź do menu "Narzędzia".
- Wybierz "Menedżer pakietów NuGet", a następnie "Zarządzaj pakietami NuGet dla rozwiązania...".
- W oknie NuGet kliknij kartę "Przeglądaj".
- W polu wyszukiwania wpisz
Microsoft.Office.Interop.Wordi naciśnij Enter. - Z wyników wyszukiwania wybierz pakiet
Microsoft.Office.Interop.Word. - Po prawej stronie upewnij się, że projekt aplikacji konsolowej jest zaznaczony, a następnie kliknij przycisk "Zainstaluj".

Visual Studio zainstaluje teraz pakiet i doda do niego odwołanie w projekcie. Ten pakiet zawiera niezbędne moduły i narzędzia do interakcji z programem MS WORD z poziomu aplikacji napisanej w języku C#.
Przedstawiamy IronWord: doskonałą alternatywę dla Interop
Chociaż Interop zapewnia zaawansowane możliwości pracy z programami WORD i Excel, ma pewne ograniczenia. Poznaj bibliotekę IronWord, wszechstronną bibliotekę zoptymalizowaną dla programistów .NET. IronWord zapewnia płynniejsze działanie niż Interop, zwłaszcza podczas edycji dokumentów WORD. Zapewnia to nie tylko kompatybilność i wydajność, ale także upraszcza złożone zadania dzięki intuicyjnym metodom. Aby ułatwić porównanie, podam fragmenty kodu IronWord dla każdego przypadku użycia po MS WORD, korzystając z IronWord w wersji 2024.1.2.
Otwieranie istniejącego dokumentu WORD
Często może zaistnieć potrzeba edycji istniejących dokumentów WORDa. Poniższy przykład pokazuje, jak to zrobić w języku C#:
// Create an instance of the Word Application
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Open a Word document with the specified file path
var WordDoc = WordApp.Documents.Open(@"path_to_your_document.docx");
// Create an instance of the Word Application
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Open a Word document with the specified file path
var WordDoc = WordApp.Documents.Open(@"path_to_your_document.docx");
' Create an instance of the Word Application
Dim WordApp = New Microsoft.Office.Interop.Word.Application()
' Open a Word document with the specified file path
Dim WordDoc = WordApp.Documents.Open("path_to_your_document.docx")
W powyższym kodzie zastąp path_to_your_document.docx ścieżką do pliku docx.
Korzystanie z IronWord
Otwórz dokument WORDa za pomocą IronWord.
// Open a Word document with the specified file path using IronWord
WordDocument doc = new WordDocument(@"path_to_your_document.docx");
// Open a Word document with the specified file path using IronWord
WordDocument doc = new WordDocument(@"path_to_your_document.docx");
' Open a Word document with the specified file path using IronWord
Dim doc As New WordDocument("path_to_your_document.docx")
Tworzenie nowego dokumentu WORD
Aby utworzyć dokumenty WORD od podstaw:
// Initialize a new instance of the Word Application
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Add a new Word document
var WordDoc = WordApp.Documents.Add();
// Initialize a new instance of the Word Application
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Add a new Word document
var WordDoc = WordApp.Documents.Add();
' Initialize a new instance of the Word Application
Dim WordApp = New Microsoft.Office.Interop.Word.Application()
' Add a new Word document
Dim WordDoc = WordApp.Documents.Add()
Ten fragment kodu tworzy nowy dokument WORDa, który można edytować za pomocą języka C#.
Korzystanie z IronWord
// Create a new, empty Word document using IronWord
WordDocument doc = new WordDocument();
// Create a new, empty Word document using IronWord
WordDocument doc = new WordDocument();
' Create a new, empty Word document using IronWord
Dim doc As New WordDocument()
Dodawanie tekstu do dokumentu WORD
Aby dodać nowy akapit tekstu:
// Add a new paragraph to the document
WordDoc.Paragraphs.Add();
// Assign text to the newly added paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph.";
// Add a new paragraph to the document
WordDoc.Paragraphs.Add();
// Assign text to the newly added paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph.";
' Add a new paragraph to the document
WordDoc.Paragraphs.Add()
' Assign text to the newly added paragraph
WordDoc.Paragraphs(1).Range.Text = "This is the first paragraph."
Metoda Paragraphs.Add() dodaje nowy akapit do dokumentu WORD, a właściwość Range.Text przypisuje do niego nowy tekst.
Korzystanie z IronWord
// Add a new text to the document using IronWord
doc.AddText("Add text using IronWord");
// Add a new text to the document using IronWord
doc.AddText("Add text using IronWord");
' Add a new text to the document using IronWord
doc.AddText("Add text using IronWord")
Edycja istniejącego tekstu
W tym samouczku zmieńmy pierwszy akapit:
// Edit the text of the first paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph.";
// Edit the text of the first paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph.";
' Edit the text of the first paragraph
WordDoc.Paragraphs(1).Range.Text = "This is the edited first paragraph."
Możesz również dodawać i edytować inne elementy w dokumencie WORDa, korzystając z podobnych metod.
Korzystanie z IronWord
// Edit the text of the first paragraph using IronWord
doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph.";
// Edit the text of the first paragraph using IronWord
doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph.";
' Edit the text of the first paragraph using IronWord
doc.Paragraphs(0).TextRuns(0).Text = "This is the edited first paragraph."
Zapisywanie i zamykanie dokumentu
Po wprowadzeniu żądanych zmian:
// Save the document to a specified path
WordDoc.SaveAs(@"path_where_you_want_to_save.docx");
// Close the document and quit the application
WordDoc.Close();
WordApp.Quit();
// Save the document to a specified path
WordDoc.SaveAs(@"path_where_you_want_to_save.docx");
// Close the document and quit the application
WordDoc.Close();
WordApp.Quit();
' Save the document to a specified path
WordDoc.SaveAs("path_where_you_want_to_save.docx")
' Close the document and quit the application
WordDoc.Close()
WordApp.Quit()
Zastąp path_where_you_want_to_save.docx żądaną ścieżką.
Korzystanie z IronWord
// Save the document to the desired path using IronWord
doc.SaveAs(@"path_where_you_want_to_save.docx");
// Save the document to the desired path using IronWord
doc.SaveAs(@"path_where_you_want_to_save.docx");
' Save the document to the desired path using IronWord
doc.SaveAs("path_where_you_want_to_save.docx")
Pełny kod i przykład
Zbierzmy to wszystko w całość. Oto kompletny przykład kodu pokazujący, jak otworzyć istniejący dokument WORD, edytować go, a następnie zapisać zmiany:
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Create a new Word document
var WordDoc = WordApp.Documents.Add();
// Add new text
WordDoc.Paragraphs.Add();
WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph.";
// Edit the first paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph.";
// Save and close
WordDoc.SaveAs(@"path_where_you_want_to_save.docx");
WordDoc.Close();
WordApp.Quit();
var WordApp = new Microsoft.Office.Interop.Word.Application();
// Create a new Word document
var WordDoc = WordApp.Documents.Add();
// Add new text
WordDoc.Paragraphs.Add();
WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph.";
// Edit the first paragraph
WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph.";
// Save and close
WordDoc.SaveAs(@"path_where_you_want_to_save.docx");
WordDoc.Close();
WordApp.Quit();
Dim WordApp = New Microsoft.Office.Interop.Word.Application()
' Create a new Word document
Dim WordDoc = WordApp.Documents.Add()
' Add new text
WordDoc.Paragraphs.Add()
WordDoc.Paragraphs(1).Range.Text = "This is the first paragraph."
' Edit the first paragraph
WordDoc.Paragraphs(1).Range.Text = "This is the edited first paragraph."
' Save and close
WordDoc.SaveAs("path_where_you_want_to_save.docx")
WordDoc.Close()
WordApp.Quit()
Korzystanie z IronWord
Pełny przykład kodu wykorzystujący IronWord jest zwięzły. IronWord wykorzystuje zwięzłe fragmenty kodu do edycji plików DOCX.
// Create an empty Word document
WordDocument doc = new WordDocument();
// Add new text
doc.AddText("This is the first paragraph.");
// Edit the text
doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph.";
// Export DOCX
doc.SaveAs(@"path_where_you_want_to_save.docx");
// Create an empty Word document
WordDocument doc = new WordDocument();
// Add new text
doc.AddText("This is the first paragraph.");
// Edit the text
doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph.";
// Export DOCX
doc.SaveAs(@"path_where_you_want_to_save.docx");
' Create an empty Word document
Dim doc As New WordDocument()
' Add new text
doc.AddText("This is the first paragraph.")
' Edit the text
doc.Paragraphs(0).TextRuns(0).Text = "This is the edited first paragraph."
' Export DOCX
doc.SaveAs("path_where_you_want_to_save.docx")
Wnioski
W dziedzinie manipulowania dokumentami WORD i Excel w aplikacjach .NET istnieje wiele możliwości. Chociaż usługi Interop firmy Microsoft były dotychczas wybierane przez wielu, pojawienie się rozwiązań takich jak IronWord oznacza przejście w kierunku bardziej wydajnych i przyjaznych dla użytkownika narzędzi.
Często Zadawane Pytania
Jak mogę tworzyć i edytować dokumenty WORD w języku C#?
Dokumenty programu Word można tworzyć i edytować w języku C# przy użyciu usług Microsoft Interop lub biblioteki IronWord. Obie opcje umożliwiają programową obsługę dokumentów programu Word, przy czym biblioteka IronWord zapewnia większą wydajność i łatwość użytkowania.
Jakie są zalety korzystania z IronWord zamiast Microsoft Interop do obróbki dokumentów WORD?
IronWord zapewnia płynniejsze działanie niż Microsoft Interop, oferując lepszą wydajność i bardziej intuicyjne metody edycji dokumentów WORD. Jest zoptymalizowany pod kątem aplikacji .NET, co czyni go nowoczesnym i wydajnym wyborem dla programistów.
Jak otworzyć istniejący dokument WORDa za pomocą języka C#?
Aby otworzyć istniejący dokument Worda za pomocą języka C#, można skorzystać z bibliotek takich jak Microsoft Interop Services lub IronWord. Zapewniają one metody programowego ładowania i manipulowania zawartością plików Worda.
Jakie kroki należy wykonać, aby skonfigurować aplikację konsolową .NET Framework do edycji dokumentów WORD?
Najpierw upewnij się, że masz zainstalowane Visual Studio i .NET Framework. Utwórz nową aplikację konsolową .NET Framework w Visual Studio i użyj menedżera pakietów NuGet, aby zainstalować pakiet Microsoft.Office.Interop.Word lub bibliotekę IronWord.
Jak mogę dodać tekst do dokumentu WORD za pomocą języka C#?
Tekst można dodawać do dokumentu WORD za pomocą bibliotek takich jak Microsoft Interop lub biblioteka IronWord. Biblioteki te udostępniają metody programowego wstawiania i modyfikowania tekstu w dokumencie.
Jak zapisać i zamknąć dokument WORDa w języku C#?
W języku C# można zapisać i zamknąć dokument Worda za pomocą metod udostępnianych przez biblioteki, takie jak Microsoft Interop lub IronWord. Metody te zapewniają zapisanie zmian i prawidłowe zamknięcie dokumentu.
Jak wygląda proces instalacji pakietu Microsoft.Office.Interop.WORD w Visual Studio?
Aby zainstalować pakiet Microsoft.Office.Interop.WORD w Visual Studio, należy przejść do menedżera pakietów NuGet poprzez menu „Narzędzia”, wybrać opcję „Zarządzaj pakietami NuGet dla rozwiązania...”, wyszukać „Microsoft.Office.Interop.WORD” i zainstalować pakiet.
Jak mogę rozwiązywać typowe problemy podczas edycji dokumentów WORDa w języku C#?
Typowe błędy podczas edycji dokumentów WORDa w języku C# można często rozwiązać, sprawdzając poprawność instalacji bibliotek, upewniając się co do zgodności z .NET Framework oraz weryfikując, czy ścieżka do dokumentu i uprawnienia są prawidłowe.
Jak utworzyć nowy dokument WORD w języku C#?
Można utworzyć nowy dokument programu Word w języku C# przy użyciu biblioteki takiej jak Microsoft Interop lub biblioteka IronWord. Biblioteki te udostępniają metody inicjalizacji nowego dokumentu programu Word i dodawania treści w razie potrzeby.
Czy istnieje kompletny przykład kodu do edycji dokumentów WORD przy użyciu IronWord?
Tak, samouczek zawiera kompletny przykład kodu do edycji dokumentów Worda przy użyciu IronWord. Obejmuje on utworzenie instancji aplikacji Word, dodawanie i edycję tekstu oraz zapisywanie dokumentu, demonstrując praktyczne zastosowanie metod IronWord.




