时间在这里停顿 2017-05-04 06:37 采纳率: 0%
浏览 2179
已采纳

file.createNewFile()有实际意义吗?

通常可以用下面方法创建文件

File file = new File("test.txt");
if(!file.exists()){
        file.createNewFile();
}

可是在使用输出流的时候可以自动创建

try {
            File file = new File("test.txt");
            FileOutputStream fos = new FileOutputStream(file);
} catch (FileNotFoundException e) {
            e.printStackTrace();
}

这样的话file.createNewFile();还有什么意义呢?写文件的话,流可以自己创建文件;读文件创建个空文件也没有读的意义。总觉得这句话完全用不到,是不是我忽略了什么?

  • 写回答

1条回答

  • 卖太妃糖的古尔丹 2017-05-04 06:52
    关注

    虽然我没有看过FileOutputStream这个类的源代码,但是我估计里面也是掉用了这个方法,有的时候你不使用流,但是也要在某个地方创建文件不就用到了吗,再说流是有开销的,你使用完了还要关,而且根据程序设计原则就是把不同功能的模块区分出来,文件类专门管理文件,文件流专门负责传输文件,这是语言设计,就像高级流关闭之后,包含的低级流也会自动关闭,但是还不是有关闭的方法,你说有什么意义呢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 matlab计算中误差
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊