RandomAccessFile类用处还是很大的,读写文件非常方便,指针又可以任意移动,这里有个写入和读取的例子供你参考,你可以直接拷贝去编译和运行,慢慢体会一下:importjava.io.IOException;importjava.io.File;importjava.io.RandomAccessFile;classRandomFileTest{publicstaticvoidmain(String[]args)throwsException{Students1=newStudent(1,\"zhangsan\",90.5);Students2=newStudent(2,\"lisi\",98.5);Students3=newStudent(3,\"wangwu\",96.5);FileuserDir=newFile(System.getProperties().getProperty(\"user.dir\"));FiletempFile=File.createTempFile(\"~student\",\".tmp\",userDir);tempFile.deleteOnExit();RandomAccessFileraf=newRandomAccessFile(tempFile,\"rw\");s1.write(raf);s2.write(raf);s3.write(raf);raf.seek(0);Students=newStudent();for(longi=0;iraf.length();i=raf.getFilePointer()){s.read(raf);System.out.println(\"[lenth:\"raf.length()\",i=\"i\"]\"s);}raf.close();Thread.sleep(5000);}}classStudent{intnum;Stringname;doublescore;publicStudent(){}publicStudent(intnum,Stringname,doublescore){this.num=num;this.name=name;this.score=score;}publicvoidwrite(RandomAccessFileraf)throwsIOException{raf.writeInt(num);raf.writeUTF(name);raf.writeDouble(score);}publicvoidread(RandomAccessFileraf)throwsIOException{num=raf.readInt();name=raf.readUTF();score=raf.readDouble();}publicStringtoString(){return\"num=\"num\",name=\"name\",score=\"score;}} |