`
zjf_1103
  • 浏览: 35725 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

判断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);
        }
    }

 

分享到:
评论

相关推荐

    C++ 复制路径下文件、复制多级子路径下文件、删除路径、删除多级子路径等路径处理类源码

    7判断文件路径是否合法 8删除多级文件路径 9创建多级文件路径 10复制多级文件路径 源码包含了封装的功能模块类以及测试类, 全部源码都可以用VS2020编译通过,请放心使用! 友情提示,为了兼顾一些旧代码,预编译...

    中文API支持库(1.0-0

    _取文件版本信息长度() 针对包含了版本资源的一个文件,判断容纳文件版本信息需要一个多大的缓冲区。返回值,容纳文件的版本资源所需的缓冲区长度。如文件不包含版本信息,则返回一个0值。会设置GetLastError。 _取...

    TXT文件批量处理工具.rar

    23、批量添加文本(数据)到文件首尾:可以添加多行文本到文件的首尾,支持添加过的不进行重复添加,(判断是否重复添加的标准是某一行完全一样,包括空格等符号)。 24、批量添加文本到行首尾:可以批量添加文本到...

    delphi 开发经验技巧宝典源码

    0139 使用FileExists函数判断指定文件是否存在 90 0140 使用FileGetAttr函数返回文件的属性 90 0141 使用FileGetDate函数返回文件的修改日期 90 0142 使用FileWrite函数将缓冲区中的内容写入文件 91 4.10 ...

    delphi 开发经验技巧宝典源码06

    0139 使用FileExists函数判断指定文件是否存在 90 0140 使用FileGetAttr函数返回文件的属性 90 0141 使用FileGetDate函数返回文件的修改日期 90 0142 使用FileWrite函数将缓冲区中的内容写入文件 91 4.10 ...

    入门学习Linux常用必会60个命令实例详解doc/txt

    在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。 (1)Linux可以识别的文件系统 ◆ Windows 95/98常用的FAT 32文件系统:vfat ;...

    C#程序开发范例宝典(第2版).part13

    实例108 使用FileSystemWatcher组件监视系统日志文件是否被更改 157 3.5 HelpProvider组件 158 实例109 使用HelpProvider组件调用帮助文件 159 3.6 Process组件 159 实例110 使用Process组件访问本地进程 159 ...

    C#程序开发范例宝典(第2版).part08

    实例108 使用FileSystemWatcher组件监视系统日志文件是否被更改 157 3.5 HelpProvider组件 158 实例109 使用HelpProvider组件调用帮助文件 159 3.6 Process组件 159 实例110 使用Process组件访问本地进程 159 ...

    C#程序开发范例宝典(第2版).part02

    实例108 使用FileSystemWatcher组件监视系统日志文件是否被更改 157 3.5 HelpProvider组件 158 实例109 使用HelpProvider组件调用帮助文件 159 3.6 Process组件 159 实例110 使用Process组件访问本地进程 159 ...

    C#程序开发范例宝典(第2版).part12

    实例108 使用FileSystemWatcher组件监视系统日志文件是否被更改 157 3.5 HelpProvider组件 158 实例109 使用HelpProvider组件调用帮助文件 159 3.6 Process组件 159 实例110 使用Process组件访问本地进程 159 ...

Global site tag (gtag.js) - Google Analytics