scala - 在 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
,但这导致了相同的结果。
解决方案
如果您可以在我们的 Jira 1上与我们分享文件,我们可以看看。这听起来像一个错误。
推荐阅读
- python - 使用超时设置从子进程捕获输出
- docker - docker compose 启动的一些容器如何管理
- nginx - 如何配置 localhost nginx 以代理 https 远程后端
- python - 我如何得到这个值的东西?
- jquery - 没有得到“数量”和“总计”的价值
- go - 如何在并发 goroutine 中超时(截止日期)后“继续”?
- excel - 根据收集的间隔缩放和有条件地格式化工作表
- amazon-web-services - 为什么 OpenVPN 不更改 IP 地址?
- strapi - Strapi 中的 camelCase 集合类型的自定义控制器
- sql - 在 SQL Server Compact 中加入逗号分隔值不起作用