Java,多部分 : Determine if multipart uploaded is a type of image

标签 java image-uploading multipart

我正在开发一个具有文件上传功能的 Spring-MVC 应用程序。为此,我想确定用户上传的文件是否是一种图像。

我想创建该图像的缩略图预览,这就是为什么我需要确定它是否是图像的原因。我有缩略图创建代码,只是不知道它是否是图像。

请求代码:

@RequestMapping(value = "/notes/addattachment/{noteid}/{groupaccountid}/{api}", method = RequestMethod.POST)
    public @ResponseBody void addAttachments(@PathVariable("noteid") int noteid, @PathVariable("groupaccountid") Long groupAccountId,
            @PathVariable("api") String api, @RequestParam("attachments") MultipartFile attachment) {
        if (!(attachment.isEmpty())) {
            switch (api){
                case "somecase":
                    try {

                        String fileName = attachment.getOriginalFilename();
                        long fileSize = attachment.getSize();
                        byte[] bytes = attachment.getBytes();
                        this.groupAttachmentsService.addAttachment(bytes, fileName, fileSize, noteid, true,attachment.getContentType());
                        } catch (Exception ignored) {}
                    break;
                case "google":
                    this.driveQuickstart.insertFile(attachment,noteid, groupAccountId,"123");
                    break;
                case "dropbox":
                    String path = api.replace(":","/");
                    this.dropboxTask.insertFile(attachment,"path",noteid, groupAccountId);
                    break;


            }
        }
    }

任何帮助都会很好。谢谢。

最佳答案

如果您使用的是 java 7 ImageIO 是您可以用来检查文件是否为图像的类。 ImageIO read() 如果找不到图像,此方法返回 null。

关于Java,多部分 : Determine if multipart uploaded is a type of image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32689899/

相关文章:

java - Robot.createScreenCapture()并不总是产生像素

java - 使用 JasperReports 呈现任意 XHTML

java - 当传递给 main 的参数太多/太少时抛出异常

java - 通过 Java 的 Odoo 请求

javascript - 图片上传不显示图片(断头台裁剪)

javascript - 上传到 meteor 中的 Amazon s3 未定义属性

php - 如何使用php和android将多张图像上传到服务器(mysql数据库)

spring-boot - Spring Boot multipart 文件上传,去除本地服务器副本

c# - 将文件 block 上传到 SPS 2013 - 行中不存在方法 "StartUpload"

java - 使用javamail读取同一封邮件的邮件和附件名称