这将是一个非常愚蠢的问题,但我似乎无法在java中创建一个新文件来拯救我的生命。
它总是抛出
java.io.FileNotFoundException:Users/username/Documents/testProject/test.txt(没有这样的文件或目录)
我已经尝试过这样的:
File newFile = new File("Users/username/Documents/testProject/test.txt");
并尝试了这个:
File newFile = new File("/Users/username/Documents/testProject/test.txt");
我做错了什么?
编辑:显然问题不存在。我稍后在代码中尝试从空文件中读取内容,抱歉各位。
与它的名字可能会让您相信的相反,
new File("...")
不会创建新文件。
它创建一个包含路径名的新对象(在内存中)。
然后您可以对其执行
exists()
、canRead()
和 isDirectory()
等操作,并且可以调用 createNewFile()
使用此路径名在磁盘上创建实际文件。
exists()
应在调用 false
之前返回 createNewFile()
,并且在调用 true
后应返回 createNewFile()
。 canRead()
也一样。
欢迎来到奇妙的编程世界,在这里,正确命名事物至关重要,但几乎没有人能正确命名。
File
类是 Java 中命名最糟糕的类之一。 它应该被称为FilePath
。
除了迈克的答案之外,您可能需要放置双//而不是单个/,因为它用作转义序列。我不确定这是否适用于所有情况,但如果您仍然遇到任何错误,请尝试此操作。