Java.io.RandomAccessFile.seek() Method

Advertisements


Description

The java.io.RandomAccessFile.seek(long pos) method sets the file-pointer offset, measured from the beginning of this file, at which the next read or write occurs. The offset may be set beyond the end of the file. Setting the offset beyond the end of the file does not change the file length. The file length will change only by writing after the offset has been set beyond the end of the file.

Declaration

Following is the declaration for java.io.RandomAccessFile.seek() method

public void seek(long pos)

Parameters

  • pos -- the offset position, measured in bytes from the beginning of the file, at which to set the file pointer.

Return Value

This method does not return a value.

Exception

  • IOException -- if pos is less than 0 or if an I/O error occurs.

Example

The following example shows the usage of java.io.RandomAccessFile.readUTF() method.

package com.tutorialspoint;

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();
      }

   }
}

Assuming we have a text file c:/test.txt, which has the following content. This file will be used as an input for our example program:

ABCDE  

Let us compile and run the above program, this will produce the following result:

Hello World
Hel This i



Advertisements
Advertisements