java随机读取文件内容_java:RandomAccessFile随机读取文件内容

RandomAccessFile是用来访问那些保存数据记录的文件的,你就可以用seek( )方法来访问记录,并进行读写了。这些记录的大小不必相同;但是其大小和位置必须是可知的。但是该类仅限于操作文件。

RandomAccessFile不属于InputStream和OutputStream类系的。

public static void main(String args[]) throws Exception

{

File file = new File("F:"+File.separator+"work"+File.separator+"60"+File.separator+"60.txt");

String s = args[0];

if(s.equals("w"))

{

RandomAccessFile raf = new RandomAccessFile(file, "rw");

write(raf);

}else if(s.equals("r")){

RandomAccessFile raf = new RandomAccessFile(file, "r");

read(raf);

}

}

//随机写

public static void write(RandomAccessFile raf) throws Exception

{

String n = "zhangsan"; //8个字节

int age = 29; //4个字节

raf.writeBytes(n);

raf.writeInt(age);

n = "lisi"; //4个字节

age = 33; //4个字节

raf.writeBytes(n);

raf.writeInt(age);

n="wangwu";

age = 40;

raf.writeBytes(n);

raf.writeInt(age);

raf.close();

}

//随机读

public static void read(RandomAccessFile raf) throws Exception

{

byte b[] = null;

String name = null;

int age = 0;

b = new byte[8];

raf.skipBytes(8);

System.out.println("这是第二个人的信息");

for(int i = 0; i< 8; i++)

{

b[i] = raf.readByte(); //读取字符

}

age = raf.readInt(); //读取字符

System.out.println("姓名:" + new String(b));

System.out.println("年龄:" + age);

raf.close();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值