Java文件IO+;相对路径+;网虫

Java文件IO+;相对路径+;网虫,java,netbeans,file-io,Java,Netbeans,File Io,很简单: 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) ... 为什么fil

很简单:

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
,并显示消息
没有这样的文件或目录
?我告诉它创建文件

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


提前感谢您的帮助

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

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

如果
/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();

如果
/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();

目录
/data
是否存在?。在Netbeans中运行时,可能引用的目录与命令行不同。@Jeffrey。我现在觉得自己有点像个白痴,不。/数据不存在。它在我将项目迁移到netbeans之前就已经存在了,这可以解释它。。。谢谢目录
/data
是否存在?。在Netbeans中运行时,可能引用的目录与命令行不同。@Jeffrey。我现在觉得自己有点像个白痴,不。/数据不存在。它在我将项目迁移到netbeans之前就已经存在了,这可以解释它。。。谢谢假设为了避免这个问题,我想创建
帐户,如果它不存在,也要创建
/data
。这将是最安全的路线。假设为了避免这个问题,我想创建
帐户,如果它不存在,也要创建
/data
。这将是最安全的路线。酷。谢谢谢谢。如果当前路径已经存在,这会有任何不良影响吗?酷。谢谢谢谢。如果当前路径已经存在,这会有任何不良影响吗?