2011-11-03 14 views
1

有人知道從字節數組中獲取MIME類型的方法嗎?注意,我想這樣做沒有外部庫,只有原生的Java。從外部庫的字節數組中獲取mimetype

+1

您是否要求檢查數組中的字節並嘗試確定它是什麼類型的文件,並將其與MIME類型關聯? –

+0

@MattBall:其實這是一個普通的做法。字節數組中的前x個字節(文件的內容)通常是'魔術字節',它唯一標識字節數組的類型。 哦,我不認爲這是可能的普通的Java。你應該看看Apache Tika(是的,一個外部庫..):http://tika.apache.org/ –

+0

@Jan是的,這是「沒有外部庫」部分... –

回答

1

有一種方法可以做到這一點使用Java 7,但它是一種笨拙的(嗯TANTO 「desajeitado」):

  • 寫字節的(臨時)文件,
  • 使用Files.probeContentType(Path)檢查該文件的內容

如果字節來自文件,您可以直接在其上使用probeContentType。


編輯:
不是非常有用的,至少在Windows上:probeContentType接縫主要使用文件擴展名來判斷文件類型[: - |