0

很简单:

File account = new File("./data/account");
account.createNewFile();

给我:

java.io.IOException: No such file or directory
  at java.io.UnixFileSystem.createFileExclusively(Native Method)
  at java.io.File.createNewFile(File.java:900)
  ...

为什么 file.createNewFile() 会给我一个IOException消息No such file or directory?我告诉它创建文件。

在 NetBeans 之外运行这段代码似乎没有问题,NetBeans 不能处理相对文件链接吗?

提前感谢您的帮助!

4

2 回答 2

2

如果./data不存在,则该调用将失败。

File f = new File("./data/account");
if(!f.getParentFile().exists()) { // if the directories don't exist
    if(!f.getParentFile().mkdirs()) { // if making the directories fails
        // directories weren't created, throw exception or something
    }
}
f.createNewFile();
于 2012-05-02T02:15:36.583 回答
1

distNetbeans 正在从该文件夹运行 java 程序。您需要在data其中创建文件夹。但是,我相信在某些情况下,Netbeans 会清除整个文件夹并因此将其删除。我会使用绝对路径。

于 2012-05-02T02:11:07.133 回答