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 文件中查找和替换文本:
- 加载输入的 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 文档 了解更多功能。我们很乐意在 免费支持论坛 上听到您的反馈。干杯!