使用Java保留文件创建时间
我用java编写了一个小的复制工具,将.mp3文件复制到我的U盘上。复制新文件时,会保留某些文件属性,但不会保留创建时间 要复制我使用的文件,请执行以下操作: org.apache.commons.io.FileUtils 静态void copyFile(文件srcFile、文件destFile、布尔值preserveFileDate) copyFile(sourceFile、newTargetFile、preserveFileDate)使用Java保留文件创建时间,java,Java,我用java编写了一个小的复制工具,将.mp3文件复制到我的U盘上。复制新文件时,会保留某些文件属性,但不会保留创建时间 要复制我使用的文件,请执行以下操作: org.apache.commons.io.FileUtils 静态void copyFile(文件srcFile、文件destFile、布尔值preserveFileDate) copyFile(sourceFile、newTargetFile、preserveFileDate) 那么我的问题是,有没有办法保留文件创建时间?如果没有,我
那么我的问题是,有没有办法保留文件创建时间?如果没有,我想我设置了一个类来使用windows robocopy进行复制。如果您使用的是Java 7+,则可以使用:
Files.copy(source, target, StandardCopyOption.COPY_ATTRIBUTES);
如果不复制创建时间(在我的机器上),您也可以手动设置:
Path source = ...;
Path target = ...;
Files.copy(source, target, StandardCopyOption.COPY_ATTRIBUTES);
FileTime creationTime = (FileTime) Files.readAttributes(source, "creationTime").get("creationTime");
Files.setAttribute(target, "creationTime", creationTime);
如果您使用的是Java 7+,则可以使用:
Files.copy(source, target, StandardCopyOption.COPY_ATTRIBUTES);
如果不复制创建时间(在我的机器上),您也可以手动设置:
Path source = ...;
Path target = ...;
Files.copy(source, target, StandardCopyOption.COPY_ATTRIBUTES);
FileTime creationTime = (FileTime) Files.readAttributes(source, "creationTime").get("creationTime");
Files.setAttribute(target, "creationTime", creationTime);
看看:
可以获取和设置文件属性,如创建时间。查看:
可以获取和设置文件属性,如创建时间。如果您使用的是JDK 7或更高版本,这是一种推荐的方法。谢谢,但此方法不保留文件创建时间。@user3143553它对我有效-我添加了一些可能对您更有效的方法。这是一种推荐的方法,如果您使用的是JDK 7或更高版本,也就是说。谢谢,但使用此方法不会保留文件创建时间。@user3143553它对我有效-我添加了一些可能对您更有效的内容。