Java:将文件从一个目录复制/移动到另一个目录的安全方法

Java:将文件从一个目录复制/移动到另一个目录的安全方法,java,file,java-io,Java,File,Java Io,我们有一个处理文件操作的系统,在我的情况下,我必须将文件从一个目录复制或移动到另一个目录。有人能告诉我一个安全的方法吗?例如:假设在复制或移动执行期间,如果系统重新启动,如何确保操作正常执行。示例代码片段将非常有用。您可以这样使用: File fileFrom= new File("/FileDirectory"); Path FROM = Paths.get(fileFrom.getPath()); File fileTo= new File("/FileDirectory"); Path T

我们有一个处理文件操作的系统,在我的情况下,我必须将文件从一个目录复制或移动到另一个目录。有人能告诉我一个安全的方法吗?例如:假设在复制或移动执行期间,如果系统重新启动,如何确保操作正常执行。示例代码片段将非常有用。

您可以这样使用:

File fileFrom= new File("/FileDirectory");
Path FROM = Paths.get(fileFrom.getPath());
File fileTo= new File("/FileDirectory");
Path TO = Paths.get(fileTo.getPath());

        //sobreescribir el fichero de destino, si existe, y copiar los atributos, incluyendo los permisos rwx
        CopyOption[] options = new CopyOption[]{
            StandardCopyOption.REPLACE_EXISTING,
            StandardCopyOption.COPY_ATTRIBUTES
        };
        try {
            Files.copy(FROM, TO, options);
        } catch (FileNotFoundException ex) {
            System.out.println("Error1: " + ex.getMessage());
        } catch (IOException ex) {
            System.out.println("Error2: " + ex.getMessage());
        }

a) 为什么要混合使用java.io.File和java.nio.Path?b) 为什么要将路径作为字符串放入文件中,然后再将其从文件中取出?这并不能解决问题,即重新启动后如何恢复复制或移动操作。您的程序可以保留一个私有日志,记录哪些文件已复制,哪些文件仍需复制,所以它可以在以后恢复该操作。@VGR-谢谢您的建议!