我有一段 Java 可以在网络映射驱动器 (Z:) 上创建文件夹 脚本在服务器 A(Windows 2008 R2,以用户帐户“serviceUser”运行)上执行,并在服务器 B (Windows 2003) 上创建文件夹
服务器 B 上的根文件夹(映射为 Z:)具有特殊权限,允许“serviceUser”创建、修改、删除、写入等。权限设置为继承子对象,因此在 Z 中创建文件夹: 应该获得与 Z: 本身相同的权限。
我的代码在 Z 中创建了 2 个文件夹:例如:
File destination = new File("z:\\folder_1\\");
File destination = new File("z:\\folder_1\\subfolder_1\\");
文件夹“folder_1”获得正确的权限,但“subfolder_1”没有。
创建这些文件夹后,我需要创建一个文件,但由于“subfolder_1”没有获得权限,控制台报告 "Access is denied"
当做File fileName = new File("z:\\folder_1\\subfolder_1\\filename.png");
时
如何解决这个问题?
最佳答案
您尝试过 mkdirs 命令吗?它将委托(delegate)操作系统在整个路径中创建所有需要的目录。
File destination = new File("z:\\folder_1\\subfolder_1");
destination.mkdirs();
关于java - 创建文件夹有效,但权限未继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6635955/