使用Java/JavaCC解析RTF文档

Jon*_*Jon 8 java parsing rtf javacc

是否有人熟悉RTF文档格式并使用任何Java库进行解析.人们这样做的标准方法是使用JDK Swing API中的RTFEditorKit:

Swing RTFEditorKit API

但是在解析RTF文档方面并不准确.事实上,API中有一条评论:

RTF支持不是由Swing团队编写的.在未来,我们希望改善所提供的支持.

我不认为我会等待这件事发生:)

另一种方法是使用JavaCC定义语法并生成解析器.这样做效果更好,但我找不到完整的语法.我试过了:

PMD应用JavaCC语法

这是好的和以下(这是迄今为止最好的).

Koders RTFParserDelegate和ETranslate Grammar

有关ETranslate语法的各种实现(我知道Nutch API可能会使用它). 有谁知道哪个是最准确的语法或者是否有更好的方法?

我可以开始通过JavaCC文档来理解.jj文件并针对RTF文件进行测试......这是我目前的方法,但它需要一段时间...任何帮助将不胜感激

mic*_*ert 0

据推测,OpenOffice 的源代码包含您正在寻找的内容。