我找到了Aspose、iTextRTF资源。 Aspose 不是开源的。 iTextRTF 找不到包含 RtfWriter2 的 jar..? jRTF资源是否比较RTF文件..? 非常感谢您的帮助。提前致谢。
最佳答案
据我所知,没有免费的库支持此功能。但自己创建一个基本的比较函数可能并不难。您可以读取 rtf 文件,然后提取文本,如下所示:
// read rtf from file
JEditorPane p = new JEditorPane();
p.setContentType("text/rtf");
EditorKit rtfKit = p.getEditorKitForContentType("text/rtf");
rtfKit.read(new FileReader(fileName), p.getDocument(), 0);
rtfKit = null;
// convert to text
EditorKit txtKit = p.getEditorKitForContentType("text/plain");
Writer writer = new StringWriter();
txtKit.write(writer, p.getDocument(), 0, p.getDocument().getLength());
String documentText = writer.toString();
使用第二个编辑器套件中的text/plain
仅提取文本(不带格式),使用text/html
提取保留(大部分)格式的文本。编辑器工具包将忽略任何图像,因此您不必担心这一点。
对两个文件执行此操作,然后简单地比较两个文件生成的 html 或文本。
关于java - Java 中用于比较两个 RTF 文件的开源 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8700558/