2012-06-09 139 views
0

在我的應用程序中,我將收到一個文件。我必須檢查文件是否具有可搜索的文本(文本內容)或不可搜索的文本(圖像)並顯示。在java中識別可搜索/不可搜索的文件

我無法使用文件擴展名,因爲在PDF文件中,我們也可以有非可搜索類型。

我需要這個java代碼。任何人都可以幫助我。

+1

我認爲這個鏈接可以幫助你:http://stackoverflow.com/q/620993/1001027 –

+1

在PDF文件的情況下,你必須真正打開文件並檢查它的結構,看看是什麼樣的它包含的數據。其他文件類型也是如此,例如Word文檔。這是一項重要的工作:您必須實際支持您希望程序理解的每種文件格式。沒有神奇的'File.containsSearchableData()'方法。 – Wyzard

回答

0

此問題的實際解決方案將涉及從文件內容中找出未知文件的MIME類型。然後,您需要建立從MIME類型到類的映射,以提取相應文件類型的文本。

有做的第一部分(識別MIME類型)庫,雖然這是一種啓發式的過程,可以(在理論上)返回錯誤的答案,或者(實際上)「未知」。下面是關於如何做到這一點做題和其他參考樣本:

0

這掌握在data mining面積,還有搜索引擎(Lucene)。有很多轉換器(pdftotext,htmltotext,unzip,等等)。然後字符編碼起作用; UTF16-LE每個字符使用兩個字節。某些文件類型具有標識標頭,魔術餅乾(JPEG,GIF,PDF)。

最好做最適合您的需求的項目的互聯網研究。然後在設計一個功能流水線之後,增加功能。

如果你需要一個設計,爲數據挖掘死者的標準,JDM 2.0可能提供的API。