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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 余善航 中级黑马   /  2013-2-28 18:26  /  2016 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

创建文件的问题:
public static void createFile() throws IOException
{
    File file = new File("e:\\cc.txt");
    System.out.println(file.createNewFile());
    System.out.println(file.mkdir());
}
为什么不能创建一个文件一个目录

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

3 个回复

倒序浏览
本帖最后由 夏添 于 2013-2-28 19:27 编辑

呵呵,你这个问题问的有点意思哈,我分开解答下面两句代码的错误之处.按我说的,试过的可行的~~
System.out.println(file.createNewFile());
    System.out.println(file.mkdir());
1.createNewFile().是用来创建不存在的并且是抽象路径的文件..注意..有两个要求!!
   而你已经创建了有路径的文件File file = new File("cc.txt");
  所以System.out.println(file.createNewFile());结果是false
2.同理,file.mkdir() 创建此抽象路径名指定的目录(就是文件夹了)。 而这个文件已经有路径了
  --->你修改代码成File file = new File("cc.txt");就可以了

补充:1.请注意,程序再次运行之前,先删去你之前创建的文件或者文件夹
        2.两次打印要分开调试.因为你先运行了System.out.println(file.createNewFile());创建了c:\\
           有了路径System.out.println(file.mkdir());就又不能运行了

希望能帮到你..哈哈
           


评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
很简单,就是同名;windows下同一目录内禁止同名,不分文件还是文件夹。
不过一般情况下文件夹是不会有扩展名所以不会出现这种情况

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1

查看全部评分

回复 使用道具 举报
帮你改成【已解决】了,试了下,二楼说得很对,你自己试试,右键新建一文件夹,cc.txt,再新建一个记事本文件,改名为cc,系统会提示重名的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马