京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

文件名合法性检测

2025-5-29 17:30| 发布者: zhaojun917| 查看: 40| 评论: 0

摘要: public String uploadFile(MultipartFile file) throws IOException { // 1. 检查文件类型 String allowedExtensions = {".jpg", ".jpeg", ".png"}; String fileName = file.getOriginalFilename(); String suff ...
 public String uploadFile(MultipartFile file) throws IOException {
    // 1. 检查文件类型
    String[] allowedExtensions = {".jpg", ".jpeg", ".png"};
    String fileName = file.getOriginalFilename();
    String suffix = fileName.substring(fileName.lastIndexOf(".")).toLowerCase();
    if (!Arrays.asList(allowedExtensions).contains(suffix)) {
        throw new IllegalArgumentException("仅支持JPG/PNG格式");
    }

    // 2. 检查文件名
    String cleanName = fileName.replaceAll("[\\\\/:*?\"<>|]", "");
    if (!cleanName.equals(fileName)) {
        throw new IllegalArgumentException("文件名含非法字符");
    }

    // 3. 保存文件
    File dest = new File("/upload/" + cleanName);
    file.transferTo(dest);
    return "上传成功";
}
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-7-1 16:32 , Processed in 0.030624 second(s), 18 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

返回顶部