A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吴扬 中级黑马   /  2012-6-29 13:35  /  2900 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 吴扬 于 2012-6-30 01:55 编辑

创建文件的问题:
public static void createFile() throws IOException
{
    File file = new File("d:\\abc.txt");
    System.out.println(file.createNewFile());
    System.out.println(file.mkdir());
}
这段代码在执行了System.out.println(file.createNewFile());创建一个名为abc.txt的文本文件之后,再执行下面一句就会返回false?
不能再创建一个名为abc.txt的目录吗?为什么?

7 个回复

倒序浏览
System.out.println(file.createNewFile());//执行完这句说明file这个路径名代表的文件已经创建了,file.exists()已经为true了,所以不能再创建了
回复 使用道具 举报
public static void createFile() throws IOException
{
     File file = new File("d:\\abc.txt"); //创建了虚拟机中的file对象
    System.out.println(file.createNewFile());//调用系统底层方法创建了硬盘上的个文件
     System.out.println(file.mkdir());//调用系统方法查找需要建立的文件夹名称是否已经存在,如果已经存在,则返回false
}
你在电脑用右键创建文件夹或者新建文件的时候,如果名字已经存在,也是会弹出提示窗口的~!不允许重名~!
回复 使用道具 举报
我也是第一次发现,加了“.XXX ”文件夹居然不能和文件重名!本以为一个是目录,一个是文件,可以的,现在发现不行。
回复 使用道具 举报
createNewFile()
          当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
回复 使用道具 举报
boolean createNewFile()
当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。

回复 使用道具 举报
吴扬 中级黑马 2012-6-30 01:54:32
7#
谢谢大家,明白了!
回复 使用道具 举报
吴扬 发表于 2012-6-30 01:54
谢谢大家,明白了!

问个问题
File f1 = new File("C:\\a\\b.txt");
f1.createNewFile;
这个为什么报错?
只能创建根目录下的文件?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马