【发布时间】:2013-04-27 12:29:09
【问题描述】:
public void save() throws IOException {
File f = new File(path);
if (!f.getParentFile().exists()) {
f.getParentFile().mkdirs();
}
FileOutputStream fout = new FileOutputStream(f, false);//overwrite, append set to false
ObjectOutputStream out = new ObjectOutputStream(fout);
out.writeObject(this.vehicles);
out.close();
}
我有以下代码将车辆类型的对象保存到文件中。但是,我不太了解它是如何工作的,因为它是为我提供的示例,而且我是 java 领域的新手。
我想知道if (!f.getParentFile().exists()) {
f.getParentFile().mkdirs();
} 这些行的解释是什么我想知道getParentFile().exists() 做了什么以及为什么我们在对文件本身感兴趣的同时搜索父文件。下一行的同样问题:为什么我们要创建文件时对父目录感兴趣?
我还想知道FileOutputStream 和ObjectOutputStream 之间的区别以及为什么在以下几行FileOutputStream fout = new FileOutputStream(f, false);//overwrite, append set to false
ObjectOutputStream out = new ObjectOutputStream(fout); 中两者并排使用
提前谢谢你
【问题讨论】:
标签: java outputstream mkdir object-files