在Windows中使用java 6隐藏文件夹,但失败了

时间:2015-01-29 06:06:46

标签: java

我在命令行中运行我的类,没关系,但是当我将项目打包为Windows服务时,它失败了。谁有理由? 我的服务以System用户身份运行,tempFolder创建为System用户。 有我的代码,我没有得到任何异常和错误。

(!tempFolder.exists()){
            if(tempFolder.mkdirs()){
                String operatingSystemName = System.getProperty("os.name");
                if (operatingSystemName != null
                        && operatingSystemName.startsWith(WINDOWS_FAMILY)) {
                    String string = " attrib " + tempFolder.getAbsolutePath()+ " +h";
                    try {
                        Runtime.getRuntime().exec(string);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }else {
                throw new Exception("Can't create temp folder - " + tempFolder.toString());
            }

1 个答案:

答案 0 :(得分:0)

添加参数 + s

String string = " attrib " + tempFolder.getAbsolutePath()+ " +s +h";

+ s :用于将文件属性设置为系统文件。

attrib命令的参数

+ r :用于将文件属性设置为只读。

-r :用于清除只读文件属性。

+ a :用于将文件属性设置为存档。

-a :用于清除存档文件属性。

+ s :用于将文件属性设置为系统文件。

-s :用于清除系统文件属性。

+ h :用于使隐藏的文件属性对用户不可见。

-h :用于清除隐藏文件属性。