HowTo извлекают MimeType из байта [] [дубликат]

25
задан Gray 20 June 2012 в 14:04
поделиться

3 ответа

Попробуйте Java Mime Magic Library

byte[] data = ...
MagicMatch match = Magic.getMagicMatch(data);
String mimeType = match.getMimeType();
23
ответ дан 28 November 2019 в 21:39
поделиться

Фреймворк активации ответ Sun на это . И вполне возможно, что это уже есть в пути к классам вашего сервера приложений

-2
ответ дан 28 November 2019 в 21:39
поделиться

Я уверен, что библиотека, опубликованная @sfussenegger, является лучшим решением, но я делаю это вручную с помощью следующего фрагмента, который, надеюсь, может вам помочь.

DESCONOCIDO("desconocido", new byte[][] {}), PDF("PDF",
            new byte[][] { { 0x25, 0x50, 0x44, 0x46 } }), JPG("JPG",
            new byte[][] { { (byte) 0xff, (byte) 0xd8, (byte) 0xff,
                    (byte) 0xe0 } }), RAR("RAR", new byte[][] { { 0x52,
            0x61, 0x72, 0x21 } }), GIF("GIF", new byte[][] { { 0x47, 0x49,
            0x46, 0x38 } }), PNG("PNG", new byte[][] { { (byte) 0x89, 0x50,
            0x4e, 0x47 } }), ZIP("ZIP", new byte[][] { { 0x50, 0x4b } }), TIFF(
            "TIFF", new byte[][] { { 0x49, 0x49 }, { 0x4D, 0x4D } }), BMP(
            "BMP", new byte[][] { { 0x42, 0x4d } });

С уважением.

PD: Лучше всего то, что у него нет никакой зависимости. PD2: Нет гарантии относительно его правильности! PD3: «desconocido» означает «неизвестно» (на испанском)

10
ответ дан 28 November 2019 в 21:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: