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łaj Save na EditableDocument.
  • 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 (`&nbsp;`, `<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/)