3 回答
TA貢獻1891條經(jīng)驗 獲得超3個贊
您需要在寫入之前確保父目錄存在。您可以通過執(zhí)行此操作File#mkdirs()。
File f = new File("C:/a/b/test.txt");
f.getParentFile().mkdirs();
// ...
TA貢獻1824條經(jīng)驗 獲得超6個贊
隨著Java 7中,你可以使用Path,Paths以及Files:
import java.io.IOException;
import java.nio.file.FileAlreadyExistsException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class CreateFile {
public static void main(String[] args) throws IOException {
Path path = Paths.get("/tmp/foo/bar.txt");
Files.createDirectories(path.getParent());
try {
Files.createFile(path);
} catch (FileAlreadyExistsException e) {
System.err.println("already exists: " + e.getMessage());
}
}
}
添加回答
舉報
