RTF ドキュメント形式と、Java ライブラリを使用した解析に精通している人はいますか。これを行う標準的な方法は、JDK Swing API で RTFEditorKit を使用することです。
しかし、RTF ドキュメントの解析に関してはそれほど正確ではありません。実際、API には次のコメントがあります。
RTF サポートは、Swing チームによって作成されたものではありません。将来的には、提供されるサポートを改善したいと考えています。
これが起こるのを待つつもりはないと思います:)
もう 1 つのアプローチは、JavaCC を使用して文法を定義し、パーサーを生成することです。これはうまく機能しますが、完全な文法を見つけるのに苦労しています. 私はもう試した:
これは問題ありませんが、次のとおりです(これまでのところ最高です)。
Koders RTFParserDelegate と ETranslate 文法
ETranslate 文法にはさまざまな実装があります ( Nutch API がこれを使用する可能性があることは知っています)。 どちらが最も正確な文法であるか、またはこれに対するより良いアプローチがあるかどうかを誰かが知っていますか?
JavaCC ドキュメントを調べて .jj ファイルを理解し、RTF ファイルに対してテストすることができます...これが私の現在のアプローチですが、しばらく時間がかかります...助けていただければ幸いです