【问题标题】:Java File copy - how to inherit permissions of destination directoryJava文件复制-如何继承目标目录的权限
【发布时间】:2014-12-05 08:57:20
【问题描述】:

当我将文件从源文件夹复制到目标文件夹时,新复制的文件不会继承目标文件夹的权限。 Java中有没有一种方法可以将文件复制到目标位置会继承目标文件夹的权限?

【问题讨论】:

  • 哪个操作系统?你到底指的是什么权限?
  • 视窗。我指的是安全权限,例如哪个用户可以访问文件以及一个人有多少访问控制(读/写等)

标签: java file copy


【解决方案1】:

在 java7 中 - 您可以执行以下操作

Files.copy(source, target, StandardCopyOption.COPY_ATTRIBUTES)

我没有测试过这段代码。希望对你有帮助!!

【讨论】:

  • 实际上我的问题不是复制文件权限,而是从目标文件夹继承它。
  • COPY_ATTRIBUTES 不适用于所有文件系统。在 macOS 上,它会抛出 UnsupportedOperationException.
【解决方案2】:

使用Files.Copy 工作正常,我在 renameTo() 或 FileInput/OutputStream 代码不起作用时测试了此代码。

尝试不使用 StandardCopyOption,目标文件夹的权限会自动继承,如下所示: Files.copy(source.toPath(), destination.toPath());

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2010-12-04
    • 2011-02-25
    • 2013-07-18
    • 2021-09-13
    • 2016-03-23
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多