Java--RandomAccessFile随机访问文件流

RandomAccessFile随机访问文件流

RandomAccessFile类

RandomAccessFile 声明在java.io包下,但直接继承于java.lang.Object类,这个类既可以读也 可以写。

RandomAccessFile 类支持 “随机访问” 的方式,程序可以直接跳到文件的任意 地方来读、写文件

  • 支持只访问文件的部分内容
  • 可以向已存在的文件后追加内容

RandomAccessFile 对象包含一个记录指针,用以标示当前读写处的位置。

构造方法

RandomAccessFile(File file, String mode) 创建从中读取和向其中写入(可选)的随机访问文件流,该文件由 File 参数指定。
RandomAccessFile(String name, String mode) 创建从中读取和向其中写入(可选)的随机访问文件流,该文件具有指定名称。

创建 RandomAccessFile 类实例需要指定一个 mode 参数,该参数指 定 RandomAccessFile 的访问模式(介绍2种常用的):

  • r: 以只读方式打开(不会创建文件,读取已经存在的文件)
  • rw:可读可写(文件不存在会创建,存在不会创建)

成员方法

常规的read write方法

RandomAccessFile 类对象可以自由移动记录指针:

  • long getFilePointer():获取文件记录指针的当前位置
  • void seek(long pos):将文件记录指针定位到 pos 位置
long getFilePointer() 返回此文件中的当前偏移量。(获取文件记录指针的当前位置号)
void seek(long pos) 重置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作。(将文件记录指针定位到pos位置)

使用RandomAccessFile读写数据

读取

    /*
        RandomAccessFile读取数据
     */
    @Test
    public void readTest() throws IOException {
   
        System.out.println("System.getProperty(\"user.dir\") = " + System.getProperty("user.dir"));
        // 创建对象
        RandomAccessFile randomAccessFile = new RandomAccessFile("a.txt", "r");
        // read数据
        // 获取当前位置索引
        long filePointer = randomAccessFile.getFilePointer();
        System.out.println(
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值