代码如下:
package zuoye7;
import java.io.IOException;
import java.io.RandomAccessFile;
public class TextRandomAccessFile {
public static void main(String[] args) throws IOException{
// TODO 自动生成的方法存根
RandomAccessFile inout=new RandomAccessFile("inout.dat","rw");//创建对象
inout.setLength(0);//设置长度为0,清楚原有内容
for(int i=0;i<200;i++)
inout.writeInt(i);
System.out.println("文件当前长度是:"+inout.length());
inout.seek(0);//移动文件指针到文件开头处
System.out.println("第1个数是:"+inout.readInt());
inout.seek(1*4);//移动文件指针到第2个数之前
System.out.println("第2个数是:"+inout.readInt());
inout.seek(9*4);//移动文件指针到第10个数之前
System.out.println("第10个数是:"+inout.readInt());
inout.writeInt(555);//当前位置写入,即修改第11个数
inout.seek(inout.length());//移动指针到文件最后位置
inout.write(999);//添加一个数(第101个数)
System.out.println("新文件的长度是:"+inout.length());
inout.seek(10*4);//移动指针到第11个数之前
System.out.println("第11个数是"+inout.readInt());
inout.close();
}
}
效果如下: