You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么Tika 2.1工具会忽略纯TXT文本文件中的部分文本内容?

问题成因

Apache Tika默认开启文件类型自动检测机制,你提供的纯文本文件开头包含From:、Sent:等符合RFC822邮件格式的标准头字段,Tika会误将该纯文本文件识别为EML邮件格式文件。处理邮件格式文件时,Tika默认会剥离邮件头字段,仅输出邮件正文内容,因此开头的3行内容会被当作邮件头直接丢弃。

测试现象对应解释
  • 将Sent:改为小写sent::RFC822邮件头标准字段为首字母大写格式,小写字段无法匹配邮件头规则,Tika不会判定为邮件格式,会按纯文本正常输出全部内容
  • 将Sent:追加到第一行:只要文件开头范围内存在符合规则的连续邮件头字段,Tika就会将字段所在及之前的内容判定为邮件头,因此依然会忽略前3行
  • 将Sent:修改为\Sent::修改后无法匹配标准邮件头字段格式,不会触发邮件格式识别,内容正常输出
  • 开头新增多行Sent::所有符合邮件头规则的连续行都会被判定为邮件头部分,因此Sent:之前的内容都会被丢弃
  • 把Sent:放在第一行或开头添加换行符:邮件头识别要求字段从文件起始位置连续排列,开头有空行或Sent:单独在第一行后无其他匹配头字段时,无法触发邮件格式的判定逻辑,因此内容正常输出
解决方案

执行命令时强制指定使用纯文本解析器,无需修改原文件即可输出全部内容,命令如下:

java -jar tika-app-2.1.0.jar -t --parser=org.apache.tika.parser.txt.TXTParser test.txt

内容的提问来源于stack exchange,提问作者Michael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:09:02