说说二进制I/O的疑问
二进制I/O这一章在讲随机访问文件时(RandomFileStream)通过和其他流的对比来说明它的优点的:“到现在为止,所使用的数据流都是只读的或者只写的。这些数据流的外部文件都是顺序文件,如果不创建新文件就不能更新它们。”为什么不创建新文件就不能更新它们呀。求大神给个例子超度超度我。
------解决方案--------------------楼主,我手头资料没有你的那句话,但是我手头学习资料有这么一句话“RandomFileStream类提供了一个文件指针,用来标识要进行读写操作的下一数据的位置”
我自己对这句抽象的话理解是参照链式表,可以随时打断指向重新建立。
底层实现,猜想类似arraylist和linkedlist区别。
不一定对,我也刚学习到这块。
------解决方案--------------------RandomAccess
可以参阅FileInputStream的源码:
public FileInputStream(String name) throws FileNotFoundException {
this(name != null ? new File(name) : null);
}
实际上还是new 了File的。