这是我的课,我做错了。为什么我的文本文档成为文件夹。请说明发生了什么以及如何纠正。谢谢
public class InputOutput {
public static void main(String[] args) {
File file = new File("C:/Users/CrypticDev/Desktop/File/Text.txt");
Scanner input = null;
if (file.exists()) {
try {
PrintWriter pw = new PrintWriter(file);
pw.println("Some data that we have stored");
pw.println("Another data that we stored");
pw.close();
} catch(FileNotFoundException e) {
System.out.println("Error " + e.toString());
}
} else {
file.mkdirs();
}
try {
input = new Scanner(file);
while(input.hasNext()) {
System.out.println(input.nextLine());
}
} catch(FileNotFoundException e) {
System.out.println("Error " + e.toString());
} finally {
if (input != null) {
input.close();
}
}
System.out.println(file.exists());
System.out.println(file.length());
System.out.println(file.canRead());
System.out.println(file.canWrite());
System.out.println(file.isFile());
System.out.println(file.isDirectory());
}
}
谢谢。上面是我的Java类。
最佳答案
您错误地认为Text.txt
不是目录名。mkdirs()
创建目录(以及创建目录所需的所有目录)。您的情况是“ Text.txt”
参见此处:https://docs.oracle.com/javase/7/docs/api/java/io/File.html#mkdirs()。
一个目录有一个。在里面。
您可以使用getParentFile()
获取要创建的目录,并在其上使用mkdirs()
。