将文件移动到另一个文件夹时出现问题

时间:2011-06-18 20:04:58

标签: java

我正在使用:

// File (or directory) to be moved
    File file = new File(output.toString());



    // Destination directory
    File dir = new File(directory_name);

    // Move file to new directory
    boolean success = file.renameTo(new File(dir, new_file.getName()));
    if (!success) {
        // File was not successfully moved
    }

在这种情况下,文件是main.vm,文件夹是7 程序显示它工作(文件存在和所有)但文件没有移动到七个目录。 有什么想法吗?

文件名是main.vm还是我需要输入完整路径?该文件夹相同。 谢谢

4 个答案:

答案 0 :(得分:2)

也许你想看看Apache Commons FileUtils

答案 1 :(得分:2)

适合我。 (使用java -ea opt运行。)

    File f = new File("foo.mv");
    if(!f.exists()) 
        assert f.createNewFile() : "failed to create foo.mv";

    File folder = new File("7");
    if(!folder.exists())
        assert folder.mkdir() : "failed to create new directory";

    File fnew = new File(folder, f.getName());
    assert !fnew.exists() : "fnew already exists";
    f.renameTo(fnew);
    assert fnew.exists() : "fnew does not exist -- move failed";

    System.out.format("moved %s to %s\n",f, fnew);

答案 2 :(得分:2)

尝试执行以下步骤:

  1. 检查是否将文件移到同一文件系统中 - 否则会失败;
  2. 创建目标目录;
  3. 定义“new_file”变量。

答案 3 :(得分:1)

您需要输入文件的完整路径,而不仅是文件名。如果您将来会显示完整的源代码,以便更好地理解/回答,那就太好了。