OneNote 文件可用於組織不同的任務。例如,計劃您的旅行、一些清單或集思廣益。此外,有時您可能需要在 OneNote 文檔中查找或替換文本。讓我們探討以下主題:
在 OneNote 文件中搜索和替換文本 – Java API 安裝
Aspose.Note for Java API 允許您創建、轉換或操作 .one 文件。您可以通過從官方 下載 部分下載 JAR 文件來快速配置 API,或者在項目的 pom.xml 文件中進行以下配置。它將很容易地從 Aspose Repository 下載文件。
存儲庫:
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
依賴:
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-note</artifactId>
<version>21.1</version>
<classifier>jdk17</classifier>
</dependency>
</dependencies>
在 Java 中查找和替換 OneNote 文件特定頁面上的文本
您可以使用 OneNote 文件來保存筆記、提醒、圖片等。對於文本內容,您可以通過以下幾個簡單的步驟在 OneNote 文件中查找和替換文本:
- 加載輸入的 OneNote 文件
- 獲取頁面節點列表
- 遍歷所有節點查找文本
- 替換文字
- 保存輸出 .one 文件
以下代碼顯示瞭如何在 Java 中以編程方式查找和替換 .one 文件的特定頁面上的文本:
Map<String, String> replacements = new HashMap<String, String>();
replacements.put("2. Get organized", "New Text Here");
// 將文檔加載到 Aspose.Note 中。
Document oneFile = new Document(dataDir + "Sample1.one", new LoadOptions());
List<Page> pageNodes = (List<Page>) oneFile.getChildNodes(Page.class);
// 獲取所有 RichText 節點
List<RichText> textNodes = (List<RichText>) pageNodes.get(0).getChildNodes(RichText.class);
for (RichText richText : textNodes) {
for (String key : replacements.keySet()) {
if (richText != null && richText.getText().contains(key)) {
// 替換形狀的文本
richText.setText(richText.getText().replace(key, replacements.get(key)));
}
}
}
// 保存為任何支持的文件格式
oneFile.save(dataDir + "ReplaceTextonSpecific_out.one", com.aspose.note.SaveFormat.One);
在 Java 中查找和替換 OneNote 文件所有頁面上的文本
有時,OneNote 文件的多個頁面上會出現多次文本。為了查找和替換所有頁面上的文本,您需要按照以下步驟操作:
- 加載輸入 .one 文件
- 獲取所有 RichText 節點
- 遍歷所有節點並比較文本
- 替換文字
- 保存輸出文件
代碼片段解釋瞭如何使用 Java 以編程方式查找和替換 OneNote 文件所有頁面上的文本:
Map<String, String> replacements = new HashMap<String, String>();
//replacements.put("2. 組織起來", "New Text Here");
replacements.put("Remember everything", "New Text Here");
// 將文檔加載到 Aspose.Note 中。
LoadOptions options = new LoadOptions();
Document oneFile = new Document(dataDir + "Sample.one", options);
// 獲取所有 RichText 節點
List<RichText> textNodes = (List<RichText>) oneFile.getChildNodes(RichText.class);
// 遍歷所有節點並將文本與關鍵文本進行比較
for (RichText richText : textNodes) {
for (String key : replacements.keySet()) {
if (richText != null && richText.getText().contains(key)) {
// 替換形狀的文本
richText.setText(richText.getText().replace(key, replacements.get(key)));
}
}
}
// 保存為任何支持的文件格式
oneFile.save(dataDir + "ReplaceTextonAllPages_out.one", SaveFormat.One);
結論
在本文中,我們探討瞭如何使用 OneNote 文件。您已經學習瞭如何使用 Java 語言以編程方式查找和替換 OneNote 文件中的文本。同樣,API 還支持其他幾個功能。您可以通過查看 API 文檔 了解更多功能。我們很樂意在 免費支持論壇 上聽到您的反饋。乾杯!