Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将文件移动到新位置,然后删除以前的文件_Java_Android_File - Fatal编程技术网

Java 将文件移动到新位置,然后删除以前的文件

Java 将文件移动到新位置,然后删除以前的文件,java,android,file,Java,Android,File,我想将文件从一个路径移动到另一个路径,但不是移动它,而是将文件复制到新位置。 请提供任何提示 提前谢谢 MovePngToPreviewDir pngToPreviewDir = new MovePngToPreviewDir(null, "png"); File[] listOfPNGFiles = RootDir.listFiles(pngToPreviewDir); for(File file:listOfPNGFile

我想将文件从一个路径移动到另一个路径,但不是移动它,而是将文件复制到新位置。 请提供任何提示

提前谢谢

 MovePngToPreviewDir pngToPreviewDir = new MovePngToPreviewDir(null, "png");

                File[] listOfPNGFiles = RootDir.listFiles(pngToPreviewDir);

                for(File file:listOfPNGFiles){
                    Log.e("PNG = ",file.getAbsolutePath());
                    Log.e("PNG = ",file.getName());
                    if(previewDiagramDir == null){
                        Log.e("Preview Diagram Dir is NULL","Preview Diagram DIR is NULL");
                    }
                    if(file!= null && previewDiagramDir != null){
                        Log.e("Preview Diagram Dir",previewDiagramDir.getAbsolutePath()+"/");

                        if(file.renameTo(new File(previewDiagramDir, file.getName()))){
                            Log.e("PNG File is successfully Moved",file.getName());



                        }else{
                            Log.e("Error in Moving PNG File","Error in Moving PNG file");
                        }


                    }else{

                    }

将文件复制到另一个位置后,请使用
file.delete()
,以便将其完全移动到新位置。

如果要将文件复制到另一个位置,可以使用
file.rename()的
file
类的
方法,与istance对象
file
相关,尝试以下操作:

file.renameTo(new File("new_directory_to_copy_file"+file.getName())); 
复制文件后,您可以使用
file.delete()将其删除

注意:方法
delete()
返回一个布尔对象,然后您可以使用以下方法检查正确的文件删除:

boolean del = file.delete();

if(del) System.out.println("File "+file.getName()+" deleted!");
else System.out.println("File "+file.getName()+"not deleted!");

关于
文件
类API:

我已将文件移动到目标目录,并在移动后以三种方式从源文件夹中删除了这些移动的文件,最后在我的项目中使用了第三种方法

第一种方法:

File folder = new File("SourceDirectory_Path");
File[] listOfFiles = folder.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
Files.move(Paths.get("SourceDirectory_Path"+listOfFiles[i].getName()), Paths.get("DestinationDerectory_Path"+listOfFiles[i].getName()));
}
System.out.println("SUCCESS");
Path sourceDir = Paths.get("SourceDirectory_Path");
Path destinationDir = Paths.get("DestinationDerectory_Path");
  try(DirectoryStream<Path> directoryStream =   Files.newDirectoryStream(sourceDir)){
    for (Path path : directoryStream) {
        File d1 = sourceDir.resolve(path.getFileName()).toFile();
         File d2 = destinationDir.resolve(path.getFileName()).toFile(); 
         File oldFile = path.toFile();
        if(oldFile.renameTo(d2)){
            System.out.println("Moved");
        }else{
            System.out.println("Not Moved");
        }
    }
}catch (Exception e) {
    e.printStackTrace();
}
Path sourceDirectory= Paths.get(SOURCE_FILE_PATH);
        Path destinationDirectory = Paths.get(SOURCE_FILE_MOVE_PATH);
        try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(sourceDirectory)) {
            for (Path path : directoryStream) {                                    
                Path dpath = destinationDirectory .resolve(path.getFileName());                                    
                Files.move(path, dpath, StandardCopyOption.REPLACE_EXISTING);
            }
        } catch (IOException ex) {
            ex.printStackTrace();   
        }
File folder=新文件(“SourceDirectory_Path”);
File[]listOfFiles=folder.listFiles();
for(int i=0;i
第二种方法:

File folder = new File("SourceDirectory_Path");
File[] listOfFiles = folder.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
Files.move(Paths.get("SourceDirectory_Path"+listOfFiles[i].getName()), Paths.get("DestinationDerectory_Path"+listOfFiles[i].getName()));
}
System.out.println("SUCCESS");
Path sourceDir = Paths.get("SourceDirectory_Path");
Path destinationDir = Paths.get("DestinationDerectory_Path");
  try(DirectoryStream<Path> directoryStream =   Files.newDirectoryStream(sourceDir)){
    for (Path path : directoryStream) {
        File d1 = sourceDir.resolve(path.getFileName()).toFile();
         File d2 = destinationDir.resolve(path.getFileName()).toFile(); 
         File oldFile = path.toFile();
        if(oldFile.renameTo(d2)){
            System.out.println("Moved");
        }else{
            System.out.println("Not Moved");
        }
    }
}catch (Exception e) {
    e.printStackTrace();
}
Path sourceDirectory= Paths.get(SOURCE_FILE_PATH);
        Path destinationDirectory = Paths.get(SOURCE_FILE_MOVE_PATH);
        try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(sourceDirectory)) {
            for (Path path : directoryStream) {                                    
                Path dpath = destinationDirectory .resolve(path.getFileName());                                    
                Files.move(path, dpath, StandardCopyOption.REPLACE_EXISTING);
            }
        } catch (IOException ex) {
            ex.printStackTrace();   
        }
Path sourceDir=Path.get(“SourceDirectory_Path”);
Path destinationDir=Path.get(“destinationdirectory_Path”);
try(DirectoryStream DirectoryStream=Files.newDirectoryStream(sourceDir)){
for(路径:directoryStream){
文件d1=sourceDir.resolve(path.getFileName()).toFile();
文件d2=destinationDir.resolve(path.getFileName()).toFile();
File oldFile=path.toFile();
如果(oldFile.renameTo(d2)){
系统输出打印项次(“移动”);
}否则{
系统输出打印项次(“未移动”);
}
}
}捕获(例外e){
e、 printStackTrace();
}
第三种方法:

File folder = new File("SourceDirectory_Path");
File[] listOfFiles = folder.listFiles();
for (int i = 0; i < listOfFiles.length; i++) {
Files.move(Paths.get("SourceDirectory_Path"+listOfFiles[i].getName()), Paths.get("DestinationDerectory_Path"+listOfFiles[i].getName()));
}
System.out.println("SUCCESS");
Path sourceDir = Paths.get("SourceDirectory_Path");
Path destinationDir = Paths.get("DestinationDerectory_Path");
  try(DirectoryStream<Path> directoryStream =   Files.newDirectoryStream(sourceDir)){
    for (Path path : directoryStream) {
        File d1 = sourceDir.resolve(path.getFileName()).toFile();
         File d2 = destinationDir.resolve(path.getFileName()).toFile(); 
         File oldFile = path.toFile();
        if(oldFile.renameTo(d2)){
            System.out.println("Moved");
        }else{
            System.out.println("Not Moved");
        }
    }
}catch (Exception e) {
    e.printStackTrace();
}
Path sourceDirectory= Paths.get(SOURCE_FILE_PATH);
        Path destinationDirectory = Paths.get(SOURCE_FILE_MOVE_PATH);
        try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(sourceDirectory)) {
            for (Path path : directoryStream) {                                    
                Path dpath = destinationDirectory .resolve(path.getFileName());                                    
                Files.move(path, dpath, StandardCopyOption.REPLACE_EXISTING);
            }
        } catch (IOException ex) {
            ex.printStackTrace();   
        }
Path sourceDirectory=Path.get(源文件路径);
Path destinationDirectory=Path.get(源文件移动路径);
try(DirectoryStream DirectoryStream=Files.newDirectoryStream(sourceDirectory)){
对于(路径:directoryStream){
Path dpath=destinationDirectory.resolve(Path.getFileName());
移动(路径、dpath、StandardCopyOption.REPLACE_现有);
}
}捕获(IOEX异常){
例如printStackTrace();
}