查找替换文本 OneNote

OneNote 文件可用于组织不同的任务。例如,计划您的旅行、一些清单或头脑风暴。此外,有时您可能需要查找或替换 OneNote 文档中的文本。让我们探讨以下主题:

在 OneNote 文件中搜索和替换文本 - Java API 安装

Aspose.Note for Java API 允许您创建、转换或操作 .one 文件。您可以通过从官方 Downloads 部分下载 JAR 文件或在项目的 pom.xml 文件中进行以下配置来快速配置 API。它将轻松地从 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 文件中查找和替换文本:

  1. 加载输入的 OneNote 文件
  2. 获取页面节点列表
  3. 遍历所有节点查找文本
  4. 替换文本
  5. 保存输出 .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 文件的多个页面中会出现多次文本。为了在所有页面上查找和替换文本,您需要按照以下步骤操作:

  1. 加载输入 .one 文件
  2. 获取所有 RichText 节点
  3. 遍历所有节点并比较文本
  4. 替换文本
  5. 保存输出文件

代码片段说明了如何使用 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 文档 了解更多功能。我们很乐意在 免费支持论坛 上听到您的反馈。干杯!

也可以看看