日期:2014-05-20  浏览次数:20757 次

求助!!求助!!请大家都来讨!!——用java实现文件夹权限更改和控制。
求助!!用java实现文件夹权限更改和控制。如更改文件夹安全权限,deny 其modify权限,deny其Read & Execute 权限等。
个人思路(权供参考):首先要取得当前系统的用户组。
其次选择要限制权限的用户,对其文件夹进行权限更改。

但是,我试了许多java.security 的类,都没有实现,请有相关项目经验的高手给指点一下吧,谢谢,也欢迎大家来讨论。
如有参考价值的代码就更好了,先谢谢大家。

------解决方案--------------------
关注!!!!!!!!
------解决方案--------------------
顶下,这玩意没弄过,具体我也不太清楚。先提一下我目前的思路:

因为java是可以调用外部程序的,能够考虑用调用外部程序实现。比如,java可以通过exec调用cmd,然后利用ipconfig取到当前的IP地址等。能够同样去调用其他修改系统底层权限的命令?

下面是我写的一个演示代码,你可以参考下,看能否采用这种方式来间接实现。
Java code

public class RunIE
{
    public static void main(String args[])
    {
        try
        {
            //Runtime.getRuntime().exec("cmd /c start http://www.163.com");  //2000 or XP 方法一
            //Runtime.getRuntime().exec("command /c start http://www.163.com");  //98

            /*String command = "D:/Program Files/Internet Explorer/IEXPLORE.EXE";  //方法二
            Process child = Runtime.getRuntime().exec(command);*/
            Runtime.getRuntime().exec("cmd /c start iexplore");   //方法三
            //说明:其实这里调用的start就相当于 开始菜单中的运行指令,程序后面的内容其实就是要在运行框中要输入的内容,如notepad打开记事本,pbrush打开画板等。
        }
        catch(Exception e)
        {
            System.out.println(e);
        }
    }
};

------解决方案--------------------
另外,在windows下java也可以操作注册表的,具体你可以google ”java 注册表“,应该能搜索到。这类东西,不一定用security类。
------解决方案--------------------
关注.........
------解决方案--------------------
學習!


.
------解决方案--------------------
关注.........
------解决方案--------------------
探讨
关注.........

------解决方案--------------------
用swt重量级会占用比较多的系统资源。
------解决方案--------------------
先用vc做一个dll 然后java调用呢
------解决方案--------------------
java.io.File 类的如下方法:

boolean setExecutable(boolean executable)
设置此抽象路径名所有者执行权限的一个便捷方法。
boolean setExecutable(boolean executable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的执行权限。
boolean setLastModified(long time)
设置此抽象路径名指定的文件或目录的最后一次修改时间。
boolean setReadable(boolean readable)
设置此抽象路径名所有者读权限的一个便捷方法。
boolean setReadable(boolean readable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的读权限。
boolean setReadOnly()
标记此抽象路径名指定的文件或目录,从而只能对其进行读操作。
boolean setWritable(boolean writable)
设置此抽象路径名所有者写权限的一个便捷方法。
boolean setWritable(boolean writable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的写权限。