Java pobiera typ pliku z treści przy użyciu mimeutil nie działa zgodnie z oczekiwaniami

W moim następującym kodzie:

MimeUtil.registerMimeDetector("eu.medsea.mimeutil.detector.MagicMimeMimeDetector");
File f = new File ("c:\\temp\\mime\\java.exe");
Collection<?> mimeTypes = MimeUtil.getMimeTypes("c:\\temp\\mime\\java.exe");
MimeType m = mimeTypes.toArray(new MimeType[mimeTypes.size()])[0];
System.out.println(m);

Wyjście ma zawsze postać application / octet-stream, niezależnie od wybranego typu pliku, np. Csv, xls, exe itp.

Ale według następującej strony:

http://www.rgagnon.com/javadetails/java-0487.html

powinien pokazywać się jak słowo-ms lub ms-excel itp.

Jak to zrobić? Wszystko, czego chcę, to po prostu pobierz typ pliku z zawartości pliku (nie za pomocą niezbyt niezawodnego rozszerzenia pliku). Czytałem o innych opcjach, takich jak tika, która wymaga zbyt wielu plików (np. 20), co jest zbyt dużym obciążeniem dla tego jednego celu, a JMimeMagic, który wymaga apache-oro, który jest martwym projektem, dlatego też nie podoba mi się ten pomysł. Wszystkie inne rozwiązania wydają się opierać na rozszerzeniu pliku, które wydaje się nie być wiarygodne, jak wspomniano powyżej.

Dzięki

questionAnswers(2)

yourAnswerToTheQuestion