[size=medium]我想写一个文件读写类,然后让主程序调用它来读写文件,貌似缓冲区不能定义太大,所以想请问当读写一个较大的文件(如上100MB的文件)的时候如何实现?[/size]
第一步,获取已经读取的长度
第二步,调用skip(long n) 跳过已经读过的内容
缓冲区是放每一次读入的内容,不是用来放全部内容的,读再大的文件也不用很大的缓冲区,就跟读小文件一样就行了
文件内容是有主程序传的么?应该传不了那么大。
缓冲区不用定义都能写,使用追加的方式就可以。
一般是这么读的
[code="java"]
while(in.read(b)!=-1){
//处理b中的数据,如输出等等
}
[/code]
建议参考一些“断点续传”的源代码,在文件读取方面,算法很优化的。