package com.liang.common.utils;

import java.util.regex.Pattern;

/**
 * @Author ly
 * @Date 2024/8/2 9:50
 * @Version 1.0
 */
public class FileNameValidator {

    // 定义浏览器识别的非法字符的正则表达式
    private static final Pattern illegalCharacters = Pattern.compile("[<>:\"/\\\\|?*+=\\x00-\\x1F]");

    public  Integer isValidFileName(String fileName) {
        // 检查文件名是否为空
        if (fileName == null || fileName.trim().isEmpty()) {
            return 1; // 文件名为空不合法
        }

        // 检查文件名长度（可根据需要自定义）
        if (fileName.length() > 255) {
            return 2; // 文件名过长不合法
        }

        boolean a = illegalCharacters.matcher(fileName).find();
        // 检查文件名是否包含非法字符
        if (a == true){
            return 3;
        }
        return 4;
    }
}
