当前位置: 首页 > 知识库问答 >
问题:

Apache Tika和Json

闻鹤龄
2023-03-14
public static String tiKaDetectMimeType(final File file) throws IOException {
    TikaInputStream tikaIS = null;
    try {
        tikaIS = TikaInputStream.get(file);
        final Metadata metadata = new Metadata();
        return DETECTOR.detect(tikaIS, metadata).toString();
    } finally {
        if (tikaIS != null) {
            tikaIS.close();
        }
    }
}

共有1个答案

吕高寒
2023-03-14

JSON是基于纯文本的,所以当只给出要使用的字节时,Tika将其报告为纯文本也就不足为奇了。

你的问题是你没有提供文件名,所以Tika没有这个文件名。如果有的话,Tika可以说bytes=plain text+filename=json=>json并给出您所期望的答案

你漏掉的台词是:

metadata.set(Metadata.RESOURCE_NAME_KEY, filename);
tikaIS = TikaInputStream.get(file);
final Metadata metadata = new Metadata();
metadata.set(Metadata.RESOURCE_NAME_KEY, file.getName());
return DETECTOR.detect(tikaIS, metadata).toString();
 类似资料:
  • 问题内容: 我自己构建了一个JObject,并希望将其作为ActionResult返回。我不想创建然后序列化数据对象 例如 问题答案: 您应该只可以在操作方法中执行此操作:

  • 问题内容: 我想将Backbone.js与我控制的REST API结合使用。我希望REST API和Backbone脚本位于不同的域中,但不幸的是,这是一个跨域请求,因此将被阻止。 Backbone.js是否具有内置功能来支持JSONP请求?或者,或者,有人对将JSONP支持手动添加到Backbone.js 系统有任何经验吗? 问题答案: 您将无法将整个REST API与JSONP一起使用。您只能

  • 问题内容: 我正在尝试apache- camel,我已经建立了一条基本路由,该路由通过http4组件调用http服务,通过unmarshal()。json(JsonLibrary.Jackson)转换结果,然后打印出部分响应在bean组件中。 我遇到的问题是,当它到达json unmarhsaller时,它会在运行时爆炸: 没有类型转换器可用于从类型:java.util.HashMap转换为所需的

  • 我对rest-assured和Java是新手。我需要帮助,我想创建一个Json对象(带有键、值的数组Json),我可以添加/删除参数,并更改值 谢谢大家

  • 我有以下练习: 使用json模块。首先使用urllib2下载这个文件,然后将json作为python对象加载,并使用pprint使其在写入终端时看起来很好。 这是我所做的,但不确定我是否做对了...

  • 问题内容: 我们正在将JSON发送到由swagger定义的API,其中一些属性是DateTime,格式为yyyy-MM- ddThh:mm:ss.000Z(毫秒数必须为3位,否则端点上的验证失败),而有些则是Date(否)时间)属性。 我已经看到很多消息说使用这样的格式化程序: 但这不能将DateTimes转换为正确的格式,C#如何处理仅Date类型?它似乎总是序列化为DateTime.MinVa