The readShort() method of DataInputStream class in Java is used to read two input bytes and returns a short value. This method reads the next two bytes from the input stream and interprets it into short type and returns.
Syntax:
public final short readShort() throws IOException
Specified By: This method is specified by the readShort() method of DataInput interface.
Parameters: This method does not accept any parameter.
Return value: This method returns the short value interpreted by the next two bytes of the input stream.
Exceptions:
- EOFException – It throws EOFException if the input stream is ended before two bytes can be read.
- IOException – This method throws IOException if the stream is closed or some other I/O error occurs.
Below programs illustrate readShort() method in DataInputStream class in IO package:
Program 1: Assume the existence of file “demo.txt”.
// Java program to illustrate // DataInputStream readShort() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create short array short [] buf = { 10 , 20 , 30 , 40 , 50 }; // Create file output stream FileOutputStream outputStream = new FileOutputStream( "c:\\demo.txt" ); // Create data output stream DataOutputStream dataOutputStr = new DataOutputStream(outputStream); for ( short b : buf) { // Write short value to // the dataOutputStream dataOutputStr.writeShort(b); } dataOutputStr.flush(); // Create file input stream FileInputStream inputStream = new FileInputStream( "c:\\demo.txt" ); // Create data input stream DataInputStream dataInputStr = new DataInputStream(inputStream); while (dataInputStr.available() > 0 ) { // Print short values System.out.println( dataInputStr.readShort()); } } } |
Program 2: Assume the existence of file “demo.txt”.
// Java program to illustrate // DataInputStream readShort() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create short array short [] buf = { 191 , 225 , 480 , 763 , 500 }; // Create file output stream FileOutputStream outputStream = new FileOutputStream( "c:\\demo.txt" ); // Create data output stream DataOutputStream dataOutputStr = new DataOutputStream(outputStream); for ( short b : buf) { // Write short value to // the dataOutputStream dataOutputStr.writeShort(b); } dataOutputStr.flush(); // Create file input stream FileInputStream inputStream = new FileInputStream( "c:\\demo.txt" ); // Create data input stream DataInputStream dataInputStr = new DataInputStream(inputStream); while (dataInputStr.available() > 0 ) { // Print short values System.out.println( dataInputStr.readShort()); } } } |
References:
https://docs.oracle.com/javase/10/docs/api/java/io/DataInputStream.html#readShort()