为什么file.createnNewFile()
的If语句在这里不触发?
文件在这个if语句之后确实创建并执行了fileWriter.append()
。如果我创建了一个if (!file.createNewFile())
,则每次都会触发它。文件确实在`file.length()==0)上追加。
为什么文件创建和追加都很好,但if块不起作用?
String exportFilePath = "some/where/to/export/file.csv";
FileWriter fileWriter = new FileWriter(exportFilePath, true);
File file = new File(exportFilePath);
if (file.createNewFile()) {
System.out.println("Created File:\t" + file);
// This Does Not Work
fileWriter.append(String.join(",", headers))
.append("\n")
.close();
}
if (file.length()==0)
// This Does Work
fileWriter.append(String.join(",", headers))
.append("\n")
.close();
1条答案
按热度按时间nfg76nw01#
问题是我不理解
File file = new File(exportFilePath);
至少在最新的Java 11.0.16+11
上创建文件。我能够删除所有这些,现在代码如下所示: