以前は、カスタム設定やメタデータを設定せずにtika.parseToString()
を呼び出すことで、Tikaであらゆる種類のファイルの解析に成功しました。今では、mime-typeに基づいて解析するファイルをフィルタリングする必要があります。Tikaはmime-typeを検出しても解析できません
私はtika.detect(new BufferedInputStream(inputStream), new Metadata());
でMIMEタイプを見つけることができますが、その後tika.parseToString()
を呼び出すと、tikaはEmptyParserを使用し、検出されたコンテンツタイプは "application/octet-stream"です。これはデフォルトであり、tikaがどのタイプのファイルであるかを見つけることができません。ファイルを解析する前にメタデータのコンテンツタイプを設定しようとしましたが、これはorg.apache.tika.exception.TikaException: TIKA-198: Illegal IOException
につながります。私が読んだことは、このファイルが不正な形式であることを意味しますが、同じファイルが事前にmime-typeのチェックなしで正常に解析されます。
パーサーがファイルを解析できないように、detect()がInputStreamで何かをしますか?
私は私の問題を直接解析メソッドにInputStreamを渡すことによって引き起こされたバージョン1.13