【发布时间】:2011-02-21 22:45:36
【问题描述】:
我有一个用户下载的文件,然后我在 java 中执行一个命令来隐藏该文件:
Runtime.getRuntime().exec("attrib +H myFile.txt");
现在稍后我需要访问该隐藏文件,但我得到了
java.io.FileNotFoundException: myFile.txt (Access is denied)
如果文件未隐藏,则此方法有效,但需要隐藏文件,以便用户不会修改它。那么我应该如何修改隐藏文件呢?有没有办法在 Java 中做到这一点?
感谢您的想法。
【问题讨论】:
-
这不是隐藏文件的问题,实际问题是您没有更改文件属性的权限。您需要以管理员身份启动 cmd,然后执行您的命令。您可以使用以下代码
Process p = Runtime.getRuntime().exec("cmd /c start runas /user:domain\\administrator /savecred:try.txt cmd");