Java RandomAccessFile seek()方法与示例

RandomAccessFile类seek()方法

  • seek()方法在java.io包中可用。

  • seek()方法用于设置文件指针位置,该位置是从文件的下一个读取或写入操作开始处计算得出的,并且该位置可能超出文件的位置。

  • seek()方法是一种非静态方法,仅可通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • seek()方法在查找文件指针时可能会引发异常。
    IOException:在执行输入/输出操作时,此异常可能会引发异常。

语法:

    public void seek(long pos);

参数:

  • long pos –表示设置文件指针的偏移位置,以从文件开头开始的字节数为单位。

返回值:

此方法的返回类型为void,不返回任何内容。

示例

// Java程序演示示例 
的void seek(long pos)方法的//
// RandomAccessFile-

import java.io.*;

class RAFSeek {
 public static void main(String[] args) throws Exception {
  //实例化随机访问文件
  //具有文件名和权限的对象
  RandomAccessFile ra_f = new RandomAccessFile("e:/includehelp.txt", "rw");

  //通过使用writeUTF()方法是 
  //将数据写入文件
  ra_f.writeUTF("Welcome in Java World!!!");

  //通过使用seek()方法是 
  //设置当前文件指示器
  //从哪里可以读/写 
  //开始,即我们在此处设置为0,因此阅读
  //从0到EOF-
  ra_f.seek(0);

  //通过使用readUTF()方法是 
  读取字符串中的数据
  //此文件

  //字符串str = ra_f.readUTF(); 
  System.out.println("ra_f.readUTF(): " + ra_f.readUTF());

  //通过使用close()isto方法
  //关闭此流ran_f-
  ra_f.close();
 }
}

输出结果

ra_f.readUTF(): Welcome in Java World!!!