下面用一个例子做演示:
package com.test.FileRW;
//用随机流读写文件的优点:建立的流既能读也能写,并且能在指定位置读写数据
//这个例子是把几个int型数据写入tom.dat文件,然后反序输出
public class RandomAccessFile {
public static void main(String[] args) {
java.io.RandomAccessFile inAndOut;
int data[] ={1,2,3,4,5,6,7,8,9,10};
try {
inAndOut=new java.io.RandomAccessFile("tom.dat", "rw");//rw/读写,r/只读,w/只写
for(int i=0;i<data.length;i++){
inAndOut.writeInt(data[i]);
}
for(long i=data.length-1;i>=0;i--){
inAndOut.seek(i*4); //int占4个字节所以从第36个字节读取最后一个数
System.out.printf("\t%d",inAndOut.readInt());//每4个字节往前读取一个整数
}
inAndOut.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}