java.io.RandomAccessFile.seek(long pos) 方法将文件指针偏移量,从这个文件开始测量,进行下一个读或写操作。偏移量可以被设置为超出文件的末尾。设置偏移超出了文件的末尾不会改变文件长度。文件长度,也只是由偏移已被设置为超出文件的末尾之后写入更改。
声明
以下是java.io.RandomAccessFile.seek()方法的声明
public void seek(long pos)
参数
-
pos -- 偏移位置,以字节为单位从文件的开头计量,在其上设置文件指针。
返回值
此方法不返回任何值。
异常
-
IOException -- 如果pos小于0,或者如果发生I/ O错误。
例子
下面的示例演示java.io.RandomAccessFile.readUTF()方法的用法。
package com.yiibai; import java.io.*; public class RandomAccessFileDemo { public static void main(String[] args) { try { // create a new RandomAccessFile with filename test RandomAccessFile raf = new RandomAccessFile("c:/test.txt", "rw"); // write something in the file raf.writeUTF("Hello World"); // set the file pointer at 0 position raf.seek(0); // print the string System.out.println("" + raf.readUTF()); // set the file pointer at 5 position raf.seek(5); // write something in the file raf.writeUTF("This is an example"); // set the file pointer at 0 position raf.seek(0); // print the string System.out.println("" + raf.readUTF()); } catch (IOException ex) { ex.printStackTrace(); } } }
假设我们有一个文本文件c:/ test.txt,它具有以下内容。该文件将被用作输入到我们的示例程序:
ABCDE
让我们编译和运行上面的程序,这将产生以下结果:
Hello World Hel This i