所以我有这个问题:
我需要知道Java在使用new创建文件时在哪里保存文件,比如Linux上的这个File file = new File ("file.txt");
?
答案 0 :(得分:2)
Linux on not File file = new File ("file.txt")
不会在文件系统上创建文件。文件只是一个文件路径持有者。您需要调用file.createNewFile
来创建文件。像file.txt
这样的相对路径是针对当前用户目录解析的,通常是调用Java虚拟机的目录
答案 1 :(得分:1)
假设文件实际上是由其他代码创建的(如Evgeniy所述),您可以尝试检查当前的工作目录是否与您预期的不同。要找到该目录,您可以尝试:
String cwd = System.getProperty("user.dir"));
System.out.println("Current working directory: " + cwd);
或只是
System.out.println ("Path to file: " + file.getAbsolutePath());
看看它应该在哪里结束。
答案 2 :(得分:0)
在Windows中的相同位置:在当前目录中
答案 3 :(得分:0)
您提到的代码不会在驱动器上物理创建新文件,但逻辑上是肯定的。如果你改变代码来创建一个像file.createNewFile这样的新文件,那么你执行代码的目录就会在那里创建一个文件。