Тази тема показва как да намерите и замените текст в Word документ на C++, използвайки опростен примерен код. С помощта на C++ замяната на текст в документ на Word се извършва лесно в няколко реда лесен код без външна зависимост от MS Word или Interop библиотека. Можете да използвате приложението във всяко приложение, поддържано от C++, работещо в платформи Windows, macOS или Linux.
Стъпки за замяна на текст в документ на Word в C++
- Конфигурирайте най-новата версия на Aspose.Words.CPP от NuGet Package Manager
- Включете пространство от имена Aspose::Words и добавете необходимите заглавни файлове
- Инициализирайте обект от клас Document, за да заредите DOCX за замяна на текст
- Създайте обект от клас FindReplaceOptions, за да активирате различни свойства
- Извършване на замяна на текст за избран низ за търсене и замяна
- Запазете документа на Word със сменен текст на диск
В гореспоменатите стъпки първо ще заредим изходния документ на Word от диска и след това ще посочим различни свойства, за да зададем критериите за търсене и замяна на текста, включително посока на замяна, съпоставяне на главни и малки букви и намиране на цели думи. Накрая ще заменим текст в документ на Word с помощта на C++ и ще запазим модифицирания DOCX на диска.
Код за замяна на текст в документ на Word с помощта на 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"); | |
} | |
}; |
В този пример използването на C++ Word документ замества текст се извършва лесно с помощта на прости извиквания на API. Чрез използване на екземпляр на Document class, входният Word документ ще бъде зареден чрез API. След това в следващите стъпки ще използваме клас FindReplaceOptions, за да зададем критериите за търсене и замяна чрез задаване на различни свойства. Накрая ще запазим модифицирания DOCX на диск или в MemoryStream като изход.
В тази статия проучихме как да намерим и заменим текст в документ на Word с помощта на C++. Ако обаче искате да научите за експортирането на Word файл в PDF, вижте статията на как да конвертирате Word в PDF с помощта на C++.