Java核心类库-IO-随机访问文件(RandomAccessFile)

本文介绍了一个使用Java实现的随机访问文件示例,演示了如何通过RandomAccessFile类进行文件的读写操作,包括设置文件指针位置、跳过指定字节数等功能。

随机访问文件:表示可以在该文件任何位置读取数据。

public class RandomAccessFileDemo
{
    public static void main(String[] args) throws Exception {
        File f = new File("raf.txt");
        //write(f);
        read(f);
    }

    private static void read(File f) throws Exception {
        //r表示只读
        RandomAccessFile raf = new RandomAccessFile(f,"r");
        System.out.println("文件指针位置:"+ raf.getFilePointer());//0
        byte b = raf.readByte();
        System.out.println(b);//64
        System.out.println("文件指针位置:"+ raf.getFilePointer());//1
        String str = raf.readUTF();
        System.out.println(str);//邓肯
        System.out.println("文件指针位置:"+ raf.getFilePointer());//9
        raf.seek(0);//设置文件指针位置
        System.out.println("文件指针位置:"+ raf.getFilePointer());//0
        raf.skipBytes(9);//设置文件指针跳过9个字节
        System.out.println("文件指针位置:"+ raf.getFilePointer());//9
        int i = raf.readInt();
        System.out.println(i);
        System.out.println("文件指针位置:"+ raf.getFilePointer());//13
        raf.close();
    }

    private static void write(File f) throws Exception {
        //rw表示读写
        RandomAccessFile raf = new RandomAccessFile(f,"rw");
        raf.writeByte(65);
        raf.writeUTF("邓肯");//使用的是修改之后的UTF-8,多两个字节
        raf.writeInt(20);
        raf.close();
    }
}

RandomAccessFile经常用来做多线程下载:

1. 多线程

2. 多点下载

转载于:https://www.cnblogs.com/wenxudong/p/6905887.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值