首页 > 解决方案 > 在 Tika 中解析 RTF 只产生换行符

问题描述

我有以下 scala 方法,旨在提取 RTF 字符串的内容:

def richToPlain(note: String): String = {
    val metaData = new Metadata()
    val handler = new BodyContentHandler()
    val parser = new RTFParser()
    val bytes = new ByteArrayInputStream(note.getBytes)
    parser.parse(bytes, handler, metaData, new ParseContext())
    handler.toString
  }

当向它传递各种 RTF 字符串时,例如"{\\rtf1\\ansi\\deff0 {\\fonttbl {\\f0 Times New Roman;}}\n\\f0\\fs60 Hello, World!\n}",我无法提取正确的内容。相反,解析器似乎只返回一系列换行符(上述输入的结果将是单个换行符)。我试过强制 charaset 为UTF-8,但这导致了相同的结果。

标签: scalartfapache-tika

解决方案


如果您可以在我们的 Jira 1上与我们分享文件,我们可以看看。这听起来像一个错误。


推荐阅读