我使用FileUtils.deleteQuietly()方法将文件复制到其他地方后删除文件。但是它不是删除文件,而是文件位于同一路径。

    File folder = new File(Marker_Source_path);
    File[] listOfFiles = folder.listFiles();
    if(folder.exists() && folder.isDirectory() && folder.list().length>0)
    {
        for (int i = 0;i<listOfFiles.length; i++)
        {
            if (listOfFiles[i].isFile())
            {
                String Filename= listOfFiles[i].getName();
                String Filename_path=listOfFiles[i].getAbsolutePath();
                File File_with_path=new File(Filename_path);
                FileUtils.copyFileToDirectory(File_with_path, destinationDir2_TITLE_MM);
                FileUtils.copyFileToDirectory(File_with_path, destinationDir3_PUB_TYPE);
                FileUtils.copyFileToDirectory(File_with_path, destinationDir4_ISSUE_FREQ);
                FileUtils.copyFileToDirectory(File_with_path, destinationDir4_VOL_ISSUE);
 System.out.println("Marker File : " + Filename + " Moved to destination Dir : "+ destinationDir2_TITLE_MM.getAbsolutePath() + "
           Successfully...");
         Boolean check_del=FileUtils.deleteQuietly(File_with_path);
              System.out.println("Is File deleted : "+check_del);
            }
        }
    }
    else
    {
        System.out.println("No Markers to Copy....");
    }

最佳答案

这是由于文件权限问题而发生的。
授予权限后,它可以正常工作,并且上面的代码没有问题。

关于java - Java:无法使用FileUtils.deleteQuietly,ForceDelete,FileDeleteStrategy.FORCE.delete删除文件;,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37677416/

10-12 01:42