我尝试使用java.io.File在我的文件系统上创建一个空的.properties文件。
我的代码是:
File newFile = new File(new File(".").getAbsolutePath() + "folder\\" + newFileName.getText() + ".properties");
if (newFile.createNewFile()){
//do sth...
}
它说找不到指定的路径是不可能的。 打印文件的构造函数参数,它正确显示绝对路径。
出了什么问题?
答案 0 :(得分:1)
我认为"。"操作员可能会导致错误,不确定您在那里尝试做什么,可能误解了您的意图,但试着这样做:
File newFile = new File(new File("folder\\").getAbsolutePath() + ".properties");
答案 1 :(得分:1)
new File("folder", newFileName.getText() + ".properties")
创建对folder
目录中相对于当前工作目录的指定文件的文件引用createNewFile
之前确保该目录存在,因为它不会为您执行此操作例如......
File newFile = new File("folder", newFileName.getText() + ".properties");
File parentFile = newFile.getParentFile();
if (parentFile.exists() || parentFile.mkdirs()) {
if (!newFile.exists()) {
if (newFile.createNewFile()){
//do sth...
} else {
throw new IOException("Could not create " + newFile + ", you may not have write permissions or the file is opened by another process");
}
}
} else {
throw new IOException("Could not create directory " + parentFile + ", you may not have write permissions");
}
答案 2 :(得分:0)
我错过了new File(".").getAbsolutePath()
返回项目的最终.
的绝对路径,因此我的folder
将被称为.folder
。下次我会检查两次。