【问题标题】:Identifying searchable/non searchable file in java [closed]在java中识别可搜索/不可搜索的文件[关闭]
【发布时间】:2012-06-13 00:31:24
【问题描述】:

在我的应用程序中,我将收到一个文件。我必须检查文件是否具有可搜索的文本(文本内容)或不可搜索的文本(图像)并显示。

我不能使用文件扩展名,因为在 PDF 文件中,我们也可以有不可搜索的类型。

为此我需要 Java 代码。谁能帮帮我。

【问题讨论】:

  • 我觉得这个链接可以帮到你:stackoverflow.com/q/620993/1001027
  • 对于 PDF 文件,您必须实际打开文件并检查其结构以查看其包含的数据类型。其他文件类型也是如此,例如 Word 文档。这是大量的工作:您必须实际实现对您希望程序理解的每种文件格式的支持。没有神奇的File.containsSearchableData() 方法。

标签: java


【解决方案1】:

此问题的实际解决方案是从文件内容中找出未知文件的 MIME 类型。然后,您需要构建从 MIME 类型到类的映射,以提取相应文件类型的文本。

有一些库用于执行第一部分(识别 MIME 类型),尽管这是一个启发式过程,并且可以(理论上)返回错误答案或(实际上)“未知”。以下是关于如何执行此操作的 SO 问题和其他参考的示例:

【讨论】:

    【解决方案2】:

    这位于data mining 的区域,以及搜索引擎(Lucene)。有很多转换器(pdftotext、htmltotext、unzip 等)。那么字符编码就起作用了; UTF16-LE 每个字符使用两个字节。某些文件类型具有识别标头、魔术 cookie(JPEG、GIF、PDF)。

    最好对最适合您需求的项目进行互联网研究。然后在设计出功能正常的管道后,逐步添加功能。

    如果您需要设计,即数据挖掘的死标准,JDM 2.0 可能会提供 API。

    【讨论】:

      猜你喜欢
      • 2011-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-09
      • 2012-06-10
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      相关资源
      最近更新 更多