你的位置:首页 > Java教程

[Java教程]atitit.RandomAccessFilerwsrwd的区别于联系


atitit.RandomAccessFile rws rwd 的区别于联系

 

1. Rw rws  rwd1

2. "rws" 模式1

3. rwd"模式2

 

 

1. Rw rws  rwd

 

"r"    以只读方式打开。调用结果对象的任何 write 方法都将导致抛出 IOException。  

"rw"   打开以便读取和写入。

"rws"  打开以便读取和写入。相对于 "rw","rws" 还要求对“文件的内容”或“元数据”的每个更新都同步写入到基础存储设备。  

"rwd"  打开以便读取和写入,相对于 "rw","rwd" 还要求对“文件的内容”的每个更新都同步写入到基础存储设备

 

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

 

2. "rws" 模式

Rws模式的s即是synchronously同步的意思...

默认情形下(rw模式下),是使用buffer的,只有cache满的或者使用RandomAccessFile.close()关闭流的时候儿才真正的写到文件...

这个会有两个问题:

 

1.调试麻烦的...------------------使用write方法修改byte的时候儿,只修改到个内存兰,还没到个文件,闪的调试麻烦的,不能使用notepad++工具立即看见修改效果..

2.当系统halt的时候儿,不能写到文件...安全性稍微差点儿....

 

Rws模式就是同步模式,每write修改一个byte,立马写到磁盘..当然中间性能走差点儿,适合小的文件...and debug模式...或者安全性高的需要的时候儿...

 

 

3. rwd"模式

Rwd模式跟个rws基础的一样..不过,只对“文件的内容”同步更新到磁盘...不对metadata同步更新..

 

这个模式间于 rw 跟个 rws 中间....