⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 8.8rafile.java

📁 JAVA程序设计的源代码
💻 JAVA
字号:
import java.io.*;
public class RaFile{
public static void main (String []args)
{
Student s[]=new Student[4];
s[0]=new Student("zhangsan",17,false);
s[1]=new Student("lisi",18,true);
s[2]=new Student("wangwu",20,true);
s[3]=new Student("zhaoliu",19,false);
try{
RandomAccessFile ra=new RandomAccessFile("student.dat","rw");    //以读写方式打开文件
for(int i=0;i<4;i++)    //将4个学生信息写入文件
{
ra.writeBytes(s[i].name);    //将类型写文件
ra.writeInt(s[i].age);
ra.writeBoolean(s[i].sex);
}
System.out.println("随机文件字节数: "+ra.length());
ra.seek(0);    //文件指针指向开始位置
System.out.println("第1条学生记录: ");
byte b[]=new byte[8];
ra.read(b);
int age=ra.readInt();
boolean sex=ra.readBoolean();
System.out.println(new String(b)+"\t"+age+'\t'+sex);
ra.skipBytes(26);    //跳过26个字节访问第4个记录
System.out.println("移动后指针位置: "+ra.getFilePointer());
ra.read(b);    //按类型读取文件内容
age=ra.readInt();
sex=ra.readBoolean();
System.out.println(new String(b)+"\t"+age+"\t"+sex);
ra.close();
}
catch(IOException  e){    //捕获输入输出异常
System.out.println(e.toString());
}

}
}
class Student{
String name;
int age;
boolean sex;
final static int LEN=8;
Student(String name,int age,boolean sex){
if(name.length()>LEN){
name=name.substring(0,8);    //超过8个字符取前8个
}
else{
while(name.length()<LEN)
name=name+"\u0000";    //不足8位补足
}

this.name=name;
this.age=age;
this.sex=sex;
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -