установка типа контента в Java для загрузки файла

В моем приложении мне нравится предоставлять услугу загрузки файла. Я установил типы файлов на response.setContentType. Как я могу установить типы контента почти для всех известных типов файлов? Есть ли какой-либо простой способ? или я должен установить его вручную как, я делаю теперь, который дан ниже.

if (pictureName.indexOf("jpg") > 0) {
   res.setContentType("image/jpg");
} else if (pictureName.indexOf("gif") > 0) {
   res.setContentType("image/gif");
} else if (pictureName.indexOf("pdf") > 0) {
   res.setContentType("application/pdf");
   res.setHeader("Content-Disposition", "inline; filename=\"" + pictureName + "\"");
} else if (pictureName.indexOf("html") > 0) {
   res.setContentType("text/html");
} else if (pictureName.indexOf("zip") > 0) {
   res.setContentType("application/zip");
   res.setHeader("Content-Disposition", "attachment; filename=\"" + pictureName + "\"");
}

Спасибо :)

10
задан Gray 25 May 2013 в 00:50
поделиться

1 ответ

Посмотрите на javax.activation.MimetypesFileTypeMap (поставляется как часть Java6, можно скачать для предыдущей версии). В нем есть метод, который возвращает тип mime для заданного имени файла.

Правда, я сам никогда не пробовал его использовать, и, возможно, вам все равно придется предоставить ему список типов mime. Тем не менее, стоит посмотреть.

10
ответ дан 4 December 2019 в 01:00
поделиться
Другие вопросы по тегам:

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