判断windows系统文件路径信息是否合法

public void checkValidLocation(String fieldContents)
    {
        // 去除空格操作
        String dir = fieldContents.trim();
        
        // 如果路径长度为0,给出错误信息,并不允许进行"应用"和"确定"操作
        if (null == dir || 0 == dir.length())
        {
            setMessage("The path must be specified", IMessageProvider.ERROR);
            setValid(false);
            return;
        }
        
        // 提供Path对象验证路径
        Path path = new Path(dir);
        
        // 如果用户输入的路径信息为以下格式“C:”,则会根据操作系统类型自动加上路径分隔符“\”或“/”
        path.addTrailingSeparator();
        
        // 获取盘符
        String device = path.getDevice();
        
        // 如果用户没有输入盘符,给出错误信息
        if (null == device || "".equals(device))
        {
            setMessage("The path must include a device",
                IMessageProvider.ERROR);
            setValid(false);
            return;
        }
        
        // 如果路径不是合法的
        if (!path.isValidPath(dir))
        {
            setMessage("The path is not a valid path", IMessageProvider.ERROR);
            setValid(false);
            return;
        }
        
        // 如果路径非法,给出错误信息,并不允许进行"应用"和"确定"操作
        if (!(new File(dir).isDirectory()))
        {
            setMessage("The path is not a valid directory",
                IMessageProvider.ERROR);
            setValid(false);
            return;
        }
        else
        {
            // 如果路径信息合法,清空错误信息,并显示当前属性页配置描述信息
            setMessage(getDescription(), IMessageProvider.NONE);
            setValid(true);
        }
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值