Jak edytować DOCX i konwertować formaty przy użyciu GroupDocs.Editor
Bezproblemowo zarządzaj i przekształcaj dokumenty Word w swoim środowisku .NET przy użyciu GroupDocs.Editor .NET. W tym samouczku odkryjesz jak edytować docx pliki, konwertować je do formatów takich jak RTF, DOCM i zwykły tekst oraz zautomatyzować przepływ pracy dokumentów dla maksymalnej wydajności.
Szybkie odpowiedzi
- Jakiej biblioteki wymaga? GroupDocs.Editor for .NET (20.10+).
- Czy mogę konwertować DOCX do RTF? Tak – użyj
WordProcessingSaveOptionszWordProcessingFormats.Rtf. - Czy zapisywanie jako TXT jest obsługiwane? Absolutnie, za pomocą
TextSaveOptions. - Czy potrzebuję licencji? Wersja próbna działa w środowisku deweloperskim; licencja odblokowuje wszystkie funkcje.
- Jak obsłużyć wiele plików? Połącz kod z async/await lub Parallel.ForEach dla przetwarzania wsadowego.
Czym jest „jak edytować docx” przy użyciu GroupDocs.Editor?
GroupDocs.Editor ładuje plik DOCX, udostępnia jego zawartość jako edytowalny HTML, pozwala programowo modyfikować ten HTML, a następnie zapisuje wynik w dowolnym obsługiwanym formacie. Takie podejście eliminuje potrzebę używania interfejsu Office i działa na każdej platformie .NET po stronie serwera.
Dlaczego warto używać GroupDocs.Editor do automatyzacji przepływu pracy dokumentów?
- Tylko po stronie serwera – nie wymaga instalacji Office.
- Wiele formatów wyjściowych – RTF, DOCM, TXT, HTML, PDF itd.
- Wysoka wydajność – lekki API zaprojektowany do scenariuszy wsadowych.
- Pełna kontrola – edytuj, zamieniaj lub wstrzykuj fragmenty HTML przed zapisem.
Wymagania wstępne
- GroupDocs.Editor biblioteka (Version 20.10 or later)
- .NET Framework 4.7.2 + or .NET 5/6
- Visual Studio (dowolna nowsza edycja)
- Podstawowa znajomość C# oraz obeznanie z operacjami I/O na plikach
Instalacja GroupDocs.Editor
Możesz dodać pakiet za pomocą .NET CLI, konsoli Package Manager Console lub interfejsu NuGet UI.
dotnet add package GroupDocs.Editor
Install-Package GroupDocs.Editor
Uzyskanie licencji
Rozpocznij od wersji próbnej lub poproś o tymczasowy klucz licencyjny. W zastosowaniach produkcyjnych zakup licencję, aby odblokować nieograniczone przetwarzanie.
Jak załadować i edytować dokument DOCX
Najpierw wskaż edytor na plik źródłowy, następnie pobierz edytowalny HTML, wprowadź potrzebne zmiany i na koniec utwórz nowy EditableDocument z zmodyfikowanego kodu.
using (Editor editor = new Editor("YOUR_DOCUMENT_DIRECTORY/sample.docx", new Options.WordProcessingLoadOptions()))
{
// Your document manipulation code here
}
Przewodnik po kodzie krok po kroku
Zdefiniuj ścieżkę pliku wejściowego
string inputFilePath = “YOUR_DOCUMENT_DIRECTORY/sample.docx”;
2. **Utwórz instancję `Editor`**
```csharp
using GroupDocs.Editor;
using GroupDocs.Editor.Options;
Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions());
Edytuj HTML dokumentu
EditableDocument defaultWordProcessingDoc = editor.Edit(); string allEmbeddedInsideString = defaultWordProcessingDoc.GetEmbeddedHtml(); string allEmbeddedInsideStringEdited = allEmbeddedInsideString.Replace(“Subtitle”, “Edited subtitle”);
4. **Utwórz nowy `EditableDocument` z edytowanego HTML**
```csharp
EditableDocument editedDoc = EditableDocument.FromMarkup(allEmbeddedInsideStringEdited, null);
Zwolnij tymczasowe obiekty
editedDoc.Dispose(); defaultWordProcessingDoc.Dispose(); editor.Dispose();
## Jak konwertować Word do RTF
Zapisanie edytowanego dokumentu jako RTF jest proste przy użyciu odpowiednich opcji zapisu.
```csharp
string outputRtfPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.rtf");
WordProcessingSaveOptions rtfSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Rtf);
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
editor.Save(editedDoc, outputRtfPath, rtfSaveOptions);
}
editor.Dispose();
Jak zapisać DOCX jako DOCM przy użyciu strumienia
Gdy potrzebny jest format DOCM z obsługą makr, możesz zapisać bezpośrednio do FileStream.
string outputDocmPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.docm");
WordProcessingSaveOptions docmSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docm);
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
using (FileStream outputStream = File.Create(outputDocmPath))
{
editor.Save(editedDoc, outputStream, docmSaveOptions);
}
}
editor.Dispose();
Jak konwertować DOCX do TXT (czysty tekst)
Ekstrakcja czystego tekstu jest przydatna do indeksowania, wyszukiwania lub powiadomień e‑mail.
string outputTxtPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.txt");
TextSaveOptions textSaveOptions = new TextSaveOptions()
{
Encoding = Encoding.UTF8,
PreserveTableLayout = true
};
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
editor.Save(editedDoc, outputTxtPath, textSaveOptions);
}
editor.Dispose();
Typowe przypadki użycia i scenariusze rzeczywiste
- Automatyczne generowanie raportów: Konwertuj analityczne raporty Word do TXT w celu dystrybucji e‑mail.
- Platformy współdzielonej edycji: Pozwól użytkownikom edytować fragmenty HTML i przechowywać wynik jako DOCM lub RTF.
- Archiwizacja dokumentów: Migruj starsze pliki DOCX do DOCM w celu obsługi makr, zachowując zawartość.
- Usługi internetowe: Strumieniuj konwersje DOCX → PDF/RTF w locie bez plików tymczasowych.
Wskazówki dotyczące wydajności przy wsadowym przetwarzaniu dokumentów Word
- Zwalniaj od razu: Zawsze wywołuj
Dispose()na obiektachEditori dokumentu. - Ładuj mądrze: Wybierz najbardziej specyficzne
LoadOptions, aby uniknąć niepotrzebnego parsowania. - Równolegle przetwarzaj bezpiecznie: Użyj
Parallel.ForEachz oddzielnymi instancjamiEditordla każdego wątku. - Unikaj dużych łańcuchów w pamięci: Przy przetwarzaniu ogromnych dokumentów pracuj ze strumieniami zamiast pełnych łańcuchów HTML.
Najczęściej zadawane pytania
Q: Czy mogę edytować chroniony hasłem DOCX?
A: Tak. Podaj hasło poprzez WordProcessingLoadOptions.Password przy tworzeniu Editor.
Q: Czy można konwertować wiele plików w jednym uruchomieniu?
A: Absolutnie. Owiń logikę pojedynczego pliku w pętli lub użyj Parallel.ForEach do równoległego przetwarzania.
Q: Czy GroupDocs.Editor obsługuje .NET Core?
A: Biblioteka działa z .NET 5, .NET 6 oraz .NET Core 3.1, jak również z pełnym .NET Framework.
Q: Co się dzieje z makrami przy zapisie jako DOCM?
A: Makra są zachowywane przy użyciu formatu zapisu Docm; są usuwane przy RTF/TXT.
Q: Jak rozwiązać problem „OutOfMemoryException” podczas dużych zadań wsadowych?
A: Przetwarzaj pliki w mniejszych partiach, natychmiast zwalniaj obiekty i rozważ zwiększenie limitu pamięci aplikacji.
Zakończenie
Masz teraz kompletny, gotowy do produkcji przepływ pracy dla jak edytować docx plików i konwertować je do RTF, DOCM lub czystego tekstu przy użyciu GroupDocs.Editor .NET. Postępując zgodnie z powyższymi krokami, możesz automatyzować przepływy pracy dokumentów, obsługiwać przetwarzanie wsadowe i integrować płynną konwersję formatów w dowolnej aplikacji .NET.
Ostatnia aktualizacja: 2026-04-07
Testowano z: GroupDocs.Editor 20.10 (latest at time of writing)
Autor: GroupDocs