The readByte() method of DataInputStream class in Java is used to read and return one input byte. The byte is a signed value in the range from -128 to +127. The bytes in this method are read from the accommodated input stream.
Syntax:
public final byte readByte()
throws IOException
Specified By: This method is specified by readByte() method of DataInput interface.
Parameters: This method does not accept any parameter.
Return value: This method returns the byte value read. It is a signed 8-bit byte.
Exceptions:
- EOFException – It throws EOFException if the input stream is ended.
- IOException – This method throws IOException if the stream is closed or some other I/O error occurs.
Below programs illustrate readByte() method in DataInputStream class in IO package:
Program 1:
// Java program to illustrate// DataInputStream readByte() methodimport java.io.*;public class GFG {    public static void main(String[] args)        throws IOException    {          // Create byte array        byte[] b = { 10, 20, 30, 40, 50 };          // Create byte array input stream        ByteArrayInputStream byteArrayInputStr            = new ByteArrayInputStream(b);          // Convert byte array input stream to        // DataInputStream        DataInputStream dataInputStr            = new DataInputStream(                byteArrayInputStr);          while (dataInputStr.available() > 0) {            // Print bytes            System.out.println(                dataInputStr.readByte());        }    }} |
10 20 30 40 50
Program 2:
// Java program to illustrate// DataInputStream readByte() methodimport java.io.*;public class GFG {    public static void main(String[] args)        throws IOException    {          // Create byte array        byte[] b = { -20, -10, 0, 10, 20 };          // Create byte array input stream        ByteArrayInputStream byteArrayInputStr            = new ByteArrayInputStream(b);          // Convert byte array input stream to        // DataInputStream        DataInputStream dataInputStr            = new DataInputStream(                byteArrayInputStr);          while (dataInputStr.available() > 0) {            // Print bytes            System.out.println(                dataInputStr.readByte());        }    }} |
-20 -10 0 10 20
References:
https://docs.oracle.com/javase/10/docs/api/java/io/DataInputStream.html#readByte()
