-
随机读取和写入流RandomAccessFile
-
支持读取和写入随机访问文件
-
RandomAccessFile raf=new RandomAccessFile(文件对象,读写模式);r只读,rw读和写
private File f; //目的地 private String dir; //所有分割后的文件存储路径 private List<String> list; //每块大小 private int blockSize; //块数 private int size;
public n(File f,String dir,int blockSize) { this.f=f; this.dir=dir; this.blockSize=blockSize; this.list=new ArrayList<String>; }
//初始化 private void init() { //总长度 long len=this.f.length(); //块数 this.size=(int)Math.ceil(len*1.0/blockSize); //路径: for(int i=0;i<size;i++) { this.list.add(this.dir+i+this.f.getName()); }
} //分割:计算每一块的起始位置及大小 public void split() {
} public void t3(int i,int first,int real) throws IOException { RandomAccessFile raf=new RandomAccessFile(this.f,"r"); RandomAccessFile raf2=new RandomAccessFile(this.list.get(i),"rw");
raf.seek(first);//从第二个位置开始 byte[] flush=new byte[1024]; int len=-1; while((len=raf.read(flush))!=-1) { if(real>1024) { raf2.write(flush,0,len); real-=1024; }else { raf2.write(flush,0,real); break; //读取指定大小,读完退出 } raf2.close(); raf.close();
} } public static void main(String[]args) {
}
}
java _io_随机读取读入流RandomAccessFile
原创wx5d21d5e6e5ab1 ©著作权
©著作权归作者所有:来自51CTO博客作者wx5d21d5e6e5ab1的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java IO - 源码: InputStream
本文主要从JDK 11 源码角度分析InputStream。
Java IO/NIO/AIO -
Java NIO - IO多路复用详解
本文主要对IO多路复用,Ractor模型以及Java NIO对其的支持。
Java IO/NIO/AIO -
RandomAccessFile为“随机读取类”
RandomAccessFile为“随机读取类”
RandomAccessFile为“随机 -
Java IO(二)——RandomAccessFile
java io
java IO FILE