Zastąp tekst w dokumencie i zapisz – GroupDocs.Editor .NET
Wprowadzenie
Jeśli potrzebujesz replace text in document programowo, GroupDocs.Editor dla .NET zapewnia czysty, wysokowydajny sposób na to. W tym samouczku przeprowadzimy Cię przez ładowanie pliku Word, zamianę ciągu znaków oraz zapisanie wyniku w kilku popularnych formatach, takich jak RTF, DOCM i zwykły tekst. Niezależnie od tego, czy tworzysz usługę automatyzacji dokumentów, czy dodajesz szybkie rozwiązanie do wewnętrznego narzędzia, poniższe kroki pozwolą Ci rozpocząć pracę w kilka minut.
Szybkie odpowiedzi
- Jaki jest najprostszy sposób na zastąpienie tekstu? Załaduj plik przy użyciu
Editor, zmodyfikuj HTML i wywołajSavenaEditableDocument. - Do jakich formatów mogę zapisywać? RTF, DOCM i TXT są obsługiwane od razu.
- Czy potrzebna jest pełna instalacja Office? Nie – GroupDocs.Editor działa w pełni po stronie serwera.
- Jakie wersje .NET są wymagane? .NET Framework 4.6.1 lub nowszy, .NET Core 3.1 +, .NET 5/6 są wszystkie obsługiwane.
- Czy licencja jest wymagana w produkcji? Tak, licencja komercyjna usuwa ograniczenia wersji próbnej; dostępna jest darmowa wersja próbna.
Co to jest „replace text in document”?
„Replace text in document” odnosi się do programowego znajdowania określonego ciągu znaków w pliku i zastępowania go nową treścią bez ręcznej edycji. Operacja ta jest niezbędna przy masowych aktualizacjach, szablonowaniu lub generowaniu dokumentów na podstawie danych. Umożliwia programistom automatyzację personalizacji dokumentów, wprowadzanie zmian regulacyjnych w wielu plikach oraz integrację dynamicznego generowania treści w większych przepływach pracy.
Dlaczego używać GroupDocs.Editor dla .NET?
GroupDocs.Editor obsługuje ponad 30 formatów wejściowych i wyjściowych — w tym DOCX, RTF, TXT, HTML, PDF i ODT — przy przetwarzaniu plików do 500 MB bez ładowania całego dokumentu do pamięci. API działa na Windows, Linux i macOS, zapewniając elastyczność wieloplatformową oraz 99,9 % skuteczności przy skomplikowanych układach, według wewnętrznych benchmarków.
Wymagania wstępne
- Środowisko programistyczne: Visual Studio (dowolna aktualna edycja).
- .NET Framework: 4.6.1 lub nowszy (lub .NET Core 3.1 +).
- GroupDocs.Editor dla .NET: Pobierz najnowszą wersję tutaj.
- Podstawowa znajomość C#: Znajomość klas, metod i manipulacji łańcuchami znaków.
Aby uzyskać szczegółowe informacje, odwołaj się do oficjalnej dokumentacji.
Importowanie przestrzeni nazw
Aby rozpocząć, zaimportuj przestrzenie nazw wymagane do edycji i zapisywania dokumentów.
The Editor class is the entry point for all document‑manipulation operations.
// Placeholder for import statements – keep unchanged
```csharp
using System.IO;
using GroupDocs.Editor.Formats;
using GroupDocs.Editor.Options;
Teraz, gdy środowisko jest gotowe, przejdźmy do konkretnych kroków dla **replace text in document**.
## Jak zastąpić tekst w dokumencie przy użyciu GroupDocs.Editor?
Załaduj plik źródłowy przy użyciu `Editor`, pobierz jego reprezentację HTML, wykonaj prostą operację `Replace` na łańcuchu HTML, a następnie odtwórz `EditableDocument` z zmodyfikowanego HTML. Na koniec wywołaj odpowiednią przeciążoną metodę `Save` dla docelowego formatu.
### Krok 1: Załaduj dokument
Obiekt `EditableDocument` przechowuje w‑pamięci reprezentację pliku, który edytujesz.
Klasa `Editor` ładuje plik i zwraca `EditableDocument`, który możesz modyfikować.
```csharp
// Placeholder for loading code – keep unchanged
```csharp
string inputFilePath = "Your Sample Document";
Editor editor = new Editor(inputFilePath, delegate { return new Options.WordProcessingLoadOptions(); });
EditableDocument defaultWordProcessingDoc = editor.Edit();
### Krok 2: Zmodyfikuj dokument
Ponieważ GroupDocs.Editor pracuje na migawce HTML, możesz traktować dokument jako zwykły tekst przy prostych zamianach.
Metoda `EditableDocument.GetHtml()` wyodrębnia HTML; po zmianie łańcucha tworzysz nowy `EditableDocument` z zaktualizowanego HTML.
```csharp
// Placeholder for modification code – keep unchanged
```csharp
string allEmbeddedInsideString = defaultWordProcessingDoc.GetEmbeddedHtml();
string allEmbeddedInsideStringEdited = allEmbeddedInsideString.Replace("Subtitle", "Edited subtitle");
EditableDocument editedDoc = EditableDocument.FromMarkup(allEmbeddedInsideStringEdited, null);
### Krok 3: Zapisz dokument
GroupDocs.Editor udostępnia dedykowane metody `Save` dla każdego obsługiwanego formatu. Poniżej trzy popularne cele.
#### Zapisz jako RTF
Metoda `SaveAsRtf` zapisuje edytowaną treść w formacie Rich Text Format, zachowując większość formatowania.
```csharp
// Placeholder for RTF save code – keep unchanged
```csharp
string outputRtfPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), "editedDoc.rtf");
WordProcessingSaveOptions rtfSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Rtf);
editor.Save(editedDoc, outputRtfPath, rtfSaveOptions);
#### Zapisz jako DOCM
DOCM to format Word z obsługą makr; użyj `SaveAsDocm`, gdy potrzebujesz zachować możliwości makr.
```csharp
// Placeholder for DOCM save code – keep unchanged
```csharp
string outputDocmPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), "editedDoc.docm");
WordProcessingSaveOptions docmSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docm);
using (FileStream outputStream = File.Create(outputDocmPath))
{
editor.Save(editedDoc, outputStream, docmSaveOptions);
}
#### Zapisz jako zwykły tekst
Dla lekkiego wyjścia, `SaveAsTxt` usuwa formatowanie i zwraca czysty tekst.
```csharp
// Placeholder for TXT save code – keep unchanged
```csharp
string outputTxtPath = Path.Combine(Constants.GetOutputDirectoryPath(inputFilePath), "editedDoc.txt");
TextSaveOptions textSaveOptions = new TextSaveOptions
{
Encoding = System.Text.Encoding.UTF8,
PreserveTableLayout = true
};
editor.Save(editedDoc, outputTxtPath, textSaveOptions);
### Krok 4: Sprzątanie
Zawsze zwalniaj instancje `EditableDocument` i `Editor`, aby zwolnić uchwyty plików i zasoby niezarządzane.
Wzorzec `Dispose` zapewnia usunięcie plików tymczasowych i odzyskanie pamięci.
```csharp
// Placeholder for cleanup code – keep unchanged
```csharp
editedDoc.Dispose();
defaultWordProcessingDoc.Dispose();
editor.Dispose();
## Typowe problemy i rozwiązania
| Problem | Dlaczego się pojawia | Rozwiązanie |
|-------|----------------|-----|
| **Tekst nie został zastąpiony** | HTML może zawierać zakodowane znaki (` `, `<span>`). | Użyj `HtmlAgilityPack`, aby zlokalizować dokładny węzeł przed zamianą. |
| **Zapisany plik jest uszkodzony** | Strumień wyjściowy nie został opróżniony przed zwolnieniem. | Wywołaj `editableDocument.Save(...);` a następnie `editableDocument.Dispose();`. |
| **Spadek wydajności przy dużych plikach** | Ładowanie całego HTML dla dokumentu o 300 stronach zużywa pamięć. | Włącz `LoadOptions.UseMemoryMapping = true`, aby strumieniować części pliku. |
| **Utrata formatowania przy zapisie jako TXT** | Format TXT usuwa całe formatowanie ze względu na projekt. | Jeśli potrzebujesz podstawowego formatowania, rozważ zapis jako RTF. |
## Najczęściej zadawane pytania
**Q: Jakie formaty plików obsługuje GroupDocs.Editor?**
A: GroupDocs.Editor obsługuje ponad 30 formatów, w tym DOCX, RTF, TXT, HTML, PDF i ODT. Pełną listę znajdziesz w oficjalnej dokumentacji.
**Q: Czy mogę wypróbować GroupDocs.Editor przed zakupem?**
A: Tak, możesz uzyskać darmową wersję próbną [tutaj](https://releases.groupdocs.com/).
**Q: Czy jest dostępne wsparcie w razie problemów?**
A: Oczywiście — odwiedź forum wsparcia [tutaj](https://forum.groupdocs.com/c/editor/20), aby uzyskać pomoc od społeczności i zespołu produktu.
**Q: Jak uzyskać tymczasową licencję do oceny?**
A: Poproś o tymczasową licencję [tutaj](https://purchase.groupdocs.com/temporary-license/).
**Q: Gdzie mogę kupić pełną wersję GroupDocs.Editor?**
A: Pełną wersję możesz kupić [tutaj](https://purchase.groupdocs.com/buy).
**Ostatnia aktualizacja:** 2026-05-27
**Testowano z:** GroupDocs.Editor 2.10 dla .NET
**Autor:** GroupDocs
## Powiązane samouczki
- [Jak edytować i zapisywać dokumenty Word przy użyciu GroupDocs.Editor dla .NET: Kompletny przewodnik](/editor/net/word-processing-documents/editing-word-docs-groupdocs-editor-net/)
- [Konwertuj Word do HTML przy użyciu GroupDocs.Editor .NET: Przewodnik krok po kroku](/editor/net/document-saving/convert-word-to-html-groupdocs-editor-dotnet/)
- [Efektywna edycja dokumentów z GroupDocs.Editor .NET: Transformacja HTML do dokumentów edytowalnych](/editor/net/document-editing/edit-documents-groupdocs-editor-net/)