File testDir = new File("C:\temp\test");
testDir.createNewFile();
据我了解,上面将在目录c:\ temp
中创建一个名为test的目录File testDir = new File("C:\temp\test.dir");
testDir.createNewFile();
据我了解,上面将在目录c:\ temp
中创建一个名为test.dir的文件如果我希望test.dir实际上是目录,我应该对上面的代码做什么?
答案 0 :(得分:8)
不,第一个会创建一个常规文件 - 毕竟,这就是你要求它做的事情:
当且仅当具有此名称的文件尚不存在时,才会以原子方式创建一个由此抽象路径名命名的新空文件。检查文件是否存在以及文件是否存在(如果不存在)是针对可能影响文件的所有其他文件系统活动的原子操作。
没有任何内容表明会创建目录。你想要逃避反斜杠,或者它试图找到C:<tab>emp<tab>est
如果要创建目录,请使用File.mkdir
或File.mkdirs()
。你仍然需要逃避反斜杠:
File testDir = new File("C:\\temp\\test.dir");
bool created = testDir.mkdir();
(使用mkdirs
也可以创建父目录。)返回值告诉您它是否实际创建了一个目录。
答案 1 :(得分:2)
那不是真的。
File.createFile()
将创建一个文件。
File.mkdir()
创建一个目录。
http://download.oracle.com/javase/6/docs/api/java/io/File.html
答案 2 :(得分:1)
File testDir = new File("C:\temp\test"); testDir.createNewFile();
据我所知,上述意愿 创建一个名为test的目录 目录c:\ temp
错误 - 它将创建名为“test”的文件。文件 没有“文件扩展名”。
创建目录:
顺便说一下,通过查看API doc,可以最轻松快速地回答这类问题。帮自己一个忙,熟悉它。testDir.mkdir();