RandomAccessFile类的学习
来源:互联网 发布:淘宝类目旺旺群 编辑:程序博客网 时间:2024/05/31 05:28
RandomAccessFile类(java高级02_02)
1) 该类支持随机访问功能
package IO;
import java.io.*;
public class RandomFileTest {
/**
* @param args
*/
public static void main(String[] args) throws Exception {
Employee e1=new Employee("zhangsan",258);//定义一个对象
Employee e2=new Employee("李四",24);
Employee e3=new Employee("wangwu",25);
//byte[] buf=new byte[Employee.LEN];
String name="";//定义一个全局的字符串,存名字
//int len=0;
RandomAccessFile ra;
ra = new RandomAccessFile("employee.txt","rw");//建立文件读写器,能读能写
ra.writeChars(e1.getName());
ra.writeInt(e1.getAge());
ra.writeChars(e2.getName());
ra.writeInt(e2.getAge());
ra.writeChars(e3.getName());
ra.writeInt(e3.getAge());
ra.close();
RandomAccessFile raf=new RandomAccessFile("employee.txt","r");//建立文件读写器,只可读
raf.skipBytes(Employee.LEN*2+4);//把读标移动到第二个对象处,存储的是unicode编码,每个占2个字符
//len=raf.read(buf);
//name=new String(buf,0,len);
for (int i = 0; i < Employee.LEN; i++) {
name+=raf.readChar();//逐个读取字符,累加成字符串
}
System.out.println(name.trim()+":"+raf.readInt());//显示对象信息
name="";//清空字符串
raf.seek(0);//光标移动到第一个对象处
//len=raf.read(buf);
//name=new String(buf,0,len);
for (int i = 0; i < Employee.LEN; i++) {
name+=raf.readChar();
}
System.out.println(name.trim()+":"+raf.readInt());
name="";
raf.skipBytes(Employee.LEN*2+4);//读完第一个对象,把光标移动到下一对象
//len=raf.read(buf);
//name=new String(buf,0,len);
for (int i = 0; i < Employee.LEN; i++) {
name+=raf.readChar();
}
System.out.println(name.trim()+":"+raf.readInt());
}
}
最终执行结果:
李四:24
zhangsan:258
wangwu:25
- RandomAccessFile类的学习
- File类的学习和RandomAccessFile的学习
- RandomAccessFile类的应用
- RandomAccessFile类的使用
- java的RandomAccessFile类
- java的RandomAccessFile类
- RandomAccessFile类的使用说明
- java学习6 RandomAccessFile类
- RandomAccessFile学习
- linux下的RandomAccessFile类
- 自我独立的类:RandomAccessFile
- java RandomAccessFile类的用法
- RandomAccessFile类的基本操作
- JAVA 的 RandomAccessFile类用法
- 对RandomAccessFile类的应用
- RandomAccessFile类的基本操作
- RandomAccessFile类的使用介绍
- RandomAccessFile类学习,随机修改文件内容
- 解决ubuntu自带DocumentViewer看中文pdf乱码问题 (转载)
- File类的学习
- MySQL连接
- IO思考与实践(IO课后练习)
- java程序与其他进程的数据通信
- RandomAccessFile类的学习
- 包装类的学习
- 罗素说过:“我是不会为自己的信念去死的,因为我不能肯定自己的信念是对的。”
- MyEclipse 6.5 的一些使用技巧(输入提示)
- 查看tomcat所用的jre
- 对QQ密码框的防盗机制的探索
- 数据装入表的两种方式
- Red Hat Enterprise Linux Server 5.0 安装 非常适合新手
- Android开发环境安装SDK后提示parseSdkContent failed的解决办法