上傳圖片驗證相關
private boolean checkImageFile(MultipartFile uploadImg,ShowImgInfoDto imgInfo) throws IOException {
String fileName = uploadImg.getOriginalFilename();
String extUpp =StringUtil.toUpperCase(fileName.substring(fileName.lastIndexOf(".") + 1));
//根據副檔名判斷是否為要求的圖片
if (!extUpp.matches("^[(JPG)|(PNG)|(GIF)]+$")) {
imgInfo.setResult("error");
imgInfo.setMessage("請上傳PNG、JPG、GIF格式的檔案!");
return false;
}
//根據圖片內容判斷是否為圖片檔案
InputStream inputStream = uploadImg.getInputStream();
BufferedImage bi = ImageIO.read(inputStream);
if(bi == null){
imgInfo.setResult("error");
imgInfo.setMessage("此檔案不為圖片檔案");
return false;
}
//限制圖片的大小
if (uploadImg.getSize() > 0.512 * 1024 * 1024) {
imgInfo.setResult("error");
imgInfo.setMessage("請上傳512kb以內的檔案!");
return false;
}
return true;
}