Java.io.RandomAccessFile.readFully() Method
Description
The java.io.RandomAccessFile.readFully(byte[] b) method reads b.length bytes from this file into the byte array, starting at the current file pointer. This method reads repeatedly from the file until the requested number of bytes are read.
Declaration
Following is the declaration for java.io.RandomAccessFile.readFully() method
public final void readFully(byte[] b)
Parameters
b -- the buffer into which the data is read.
Return Value
This method does not return a value.
Exception
IOException -- if an I/O error occurs.Not thrown if end-of-file has been reached.
EOFException -- if this file reaches the end before reading all the bytes.
Example
The following example shows the usage of java.io.RandomAccessFile.readFully() method.
package com.tutorialspoint;
import java.io.*;
public class RandomAccessFileDemo {
public static void main(String[] args) {
try {
// create a string and a byte array
String s = "Hello world";
// create a new RandomAccessFile with filename test
RandomAccessFile raf = new RandomAccessFile("c:/test.txt", "rw");
// write something in the file
raf.writeUTF(s);
// set the file pointer at 0 position
raf.seek(0);
// create an array equal to the length of raf
byte[] arr = new byte[(int) raf.length()];
// read the file
raf.readFully(arr);
// create a new string based on arr
String s2 = new String(arr);
// print it
System.out.println("" + s2);
} 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