有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在已有文件之上创建文件

    File file = new File ("A" + File.separator + "B.txt");
    file.getParentFile().mkdirs();
    file.createNewFile();
    FileOutputStream out = new FileOutputStream(file);

上面的块创建了一个名为“a”的目录和一个名为“B.txt”的文件(与目录相反)


在玩游戏时,我最初创建了一个名为“a”的目录和一个名为“B.txt”的“a”子目录。通过运行代码块,我创建了一个目录层次结构a-->;B.txt。我意识到了我的错误,并将以前不正确的块更改为上面发布的块

然而,当我运行上面正确的块时,FileOutputStream out抛出了一个FileNotFoundException。这表明,对于目录层次结构A-->;在B.txt中,java拒绝创建另一个层次结构,将“B.txt”文件放在目录“A”下

这是为什么


共 (1) 个答案

  1. # 1 楼答案

    如果您查看createNewFile方法的Java文档,就会明白为什么会出现这个异常

    Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist.

    Documentation

    根据您的问题,文件“B.txt”已经存在于您的“A”目录中。这就是提出例外的原因