Toto téma ukazuje, jak najít a nahradit text v Word dokumentu v C++ pomocí příkladu zjednodušeného kódu. Použitím C++ nahradit text v dokumentu Word se snadno provede v několika řádcích jednoduchého kódu bez externí závislosti na MS Word nebo knihovně Interop. Aplikaci můžete použít v kterékoli z aplikací podporovaných C++ běžících na platformách Windows, macOS nebo Linux.
Kroky k nahrazení textu v dokumentu aplikace Word v C++
- Nakonfigurujte nejnovější verzi Aspose.Words.CPP ze Správce balíčků NuGet
- Zahrňte jmenný prostor Aspose::Words a přidejte požadované soubory záhlaví
- Inicializujte objekt třídy Document, aby se načetl DOCX pro nahrazení textu
- Chcete-li povolit různé vlastnosti, vytvořte objekt třídy FindReplaceOptions
- Proveďte nahrazení textu pro vybraný řetězec hledání a nahrazení
- Uložte dokument aplikace Word s nahrazeným textem na disk
Ve výše uvedených krocích nejprve načteme zdrojový dokument aplikace Word z disku a poté určíme různé vlastnosti pro nastavení kritérií pro vyhledávání a nahrazování textu, včetně směru nahrazení, shody velkých a malých písmen a hledání celých slov. Nakonec nahradíme text ve wordovém dokumentu pomocí C++ a upravený DOCX uložíme na disk.
Kód pro nahrazení textu v dokumentu aplikace Word pomocí C++
#pragma once | |
#include <cstdint> | |
#include <iostream> | |
#include <Aspose.Words.Cpp/License.h> | |
#include <Aspose.Words.Cpp/Document.h> | |
#include <Aspose.Words.Cpp/Range.h> | |
#include <Aspose.Words.Cpp/Replacing/FindReplaceOptions.h> | |
#include <Aspose.Words.Cpp/Replacing/FindReplaceDirection.h> | |
#include <system/enumerator_adapter.h> | |
#include <system/io/path.h> | |
#include <system/smart_ptr.h> | |
#include <system/shared_ptr.h> | |
using namespace Aspose::Words; | |
using namespace Aspose::Words::Replacing; | |
using System::MakeObject; | |
using System::SharedPtr; | |
using System::String; | |
class FindAndReplaceTextEx | |
{ | |
public: | |
static void FindAndReplaceText() | |
{ | |
// Load and Set API License | |
System::String LicFilePath = u"Aspose.Total.Net.lic"; | |
SharedPtr<Aspose::Words::License> WordsCPPLicenseForTable = System::MakeObject<Aspose::Words::License>(); | |
// Setting Aspose.Words product license | |
WordsCPPLicenseForTable->SetLicense(LicFilePath); | |
// Load an input Word file with Document class for replacing text | |
SharedPtr<Document> FindInDocument = MakeObject<Document>(u"Test.docx"); | |
// Instantiate FindReplaceOptions class object to replace text string | |
SharedPtr<FindReplaceOptions> options = MakeObject< FindReplaceOptions>(); | |
options->set_MatchCase(true); | |
options->set_Direction(FindReplaceDirection::Forward); | |
options->set_FindWholeWordsOnly(true); | |
// Apply search and replace string in the Replace method | |
FindInDocument->get_Range()->Replace(u"Test", u"Replace", options); | |
// Save the document on disk with replaced text | |
FindInDocument->Save(u"FindAndReplace.docx"); | |
} | |
}; |
V tomto příkladu lze použití C++ Word dokument nahradit text snadno pomocí jednoduchých volání API. Použitím instance Document class se vstupní dokument Wordu načte pomocí API. Potom v následujících krocích použijeme třídu FindReplaceOptions k nastavení kritérií hledání a nahrazování nastavením různých vlastností. Nakonec upravený DOCX uložíme na disk nebo do MemoryStreamu jako výstup.
V tomto článku jsme prozkoumali, jak najít a nahradit text v dokumentu Word pomocí C++. Pokud se však chcete dozvědět o exportu souboru Word do PDF, přečtěte si článek na jak převést Word do PDF pomocí C++.