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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Larno 中级黑马   /  2015-1-5 17:46  /  1589 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

File file=new File("a.jpg");
这句代会创建a.jpg文件吗?还是需要在执行个
file.createNewFile();
如果已经有了这个a.jpg文件,那么是覆盖掉已有文件,还是不创建。

评分

参与人数 1技术分 +1 收起 理由
杨佳名 + 1

查看全部评分

10 个回复

倒序浏览
需要学会看文档!!!!
File file=new File("a.jpg");
并没有创建文件,他只是封装了一个路径。
file.createNewFile();
如果源文件存在,则不创建,否则创建新文件。这和I/O流是有区别的。

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1 赞一个!

查看全部评分

回复 使用道具 举报
Returns: true if the named file does not exist and was successfully created; false if the named file already exists。这是方法的返回值解释
回复 使用道具 举报
过来 学的的   路过  打个酱油
回复 使用道具 举报
kerner 发表于 2015-1-5 18:04
需要学会看文档!!!!
File file=new File("a.jpg");
并没有创建文件,他只是封装了一个路径。

为什么在往外写文件的时候,File file=new File("a.jpg");没有调用createNewFile就产生了a.jpg文件
你可以试一试
回复 使用道具 举报
单独的封装对象不会创建该文件,必须调用createNewFile方法。如果该文件已经存在,则不创建,返回false。
回复 使用道具 举报
Larno 中级黑马 2015-1-11 20:46:59
7#
陈佳 发表于 2015-1-11 20:12
单独的封装对象不会创建该文件,必须调用createNewFile方法。如果该文件已经存在,则不创建,返回false。 ...

FileOutputStream out=new  FileOutputStrem(File);
out.writer(b, 0, b.length);
我下边的代码就是这个,怎么产生 a.jpg文件了
回复 使用道具 举报
陈佳 中级黑马 2015-1-11 20:56:08
8#
因为单独的new一个File对象是不会创建的,这里由于你创建了文件输出流对象,并执行了写的操作,就会创建文件了
回复 使用道具 举报
路过,过来看看
回复 使用道具 举报
Larno 发表于 2015-1-11 20:46
FileOutputStream out=new  FileOutputStrem(File);
out.writer(b, 0, b.length);
我下边的代码就是这个 ...

不是File对象给你创建的,是输出流帮你创建的。File对象只是用来封装目录的。两者不可混淆
回复 使用道具 举报
加油.........
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马