RandomAccessFile

xiaoxiao2021-02-28  117

RandomAccessFile

RandomAccessFile类同时实现了DataInput和DataOutput接口,提供了对文件随机存取的功能,利用这个类可以在文件的任何位置读取或写人数据;RandomAccessFile类提供了一个文件指针,用来标志要进行读写操作的下一数据的位置;该方法把文件的读入,写出,写到一起了,是操作文件比较好的方法;
import java.io.*; class RandomAccessFileTest{ public static void main(String[] arg) throws Exception{ Student s1 = new Student(1,"zhangsan",95.5); Student s2 = new Student(2,"lisi",96.5); Student s3 = new Student(3,"wangwu",94); RandomAccessFile raf = new RandomAccessFile("student.txt","rw"); s1.writeStudent(raf); s2.writeStudent(raf); s3.writeStudent(raf); Student s = new Student(); raf.seek(0);//把指针的偏移量设置到0的位置; for(long i=0 ; i < raf.length();i=raf.getFilePointer()){ s.readStudent(raf); System.out.println("num="+s.num+"name="+s.name+"score="+s.score); } raf.close(); } } class Student{ int num; String name; double score; Student(){} Student(int num,String name,double score){ this.num = num; this.name = name; this.score = score; } public void writeStudent(RandomAccessFile raf) throws Exception{ raf.writeInt(num); raf.writeUTF(name); raf.writeDouble(score); } public void readStudent(RandomAccessFile raf) throws Exception{ num = raf.readInt(); name = raf.readUTF(); score = raf.readDouble(); } }
转载请注明原文地址: https://www.6miu.com/read-27117.html

最新回复(0)