Byte Streams in Java


These handle data in bytes (8 bits) i.e., the byte stream classes read/write data of 8 bits. Using these you can store characters, videos, audios, images etc.

The InputStream and OutputStream classes (abstract) are the super classes of all the input/output stream classes: classes that are used to read/write a stream of bytes. Following are the byte array stream classes provided by Java −

InputStreamOutputStream
FIleInputStreamFileOutputStream
ByteArrayInputStreamByteArrayOutputStream
ObjectInputStreamObjectOutputStream
PipedInputStreamPipedOutputStream
FilteredInputStreamFilteredOutputStream
BufferedInputStreamBufferedOutputStream
DataInputStreamDataOutputStream

Example

Following Java program reads data from a particular file using FileInputStream and writes it to another, using FileOutputStream.

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class IOStreamsExample {
   public static void main(String args[]) throws IOException {
      //Creating FileInputStream object
      File file = new File("D:/myFile.txt");
      FileInputStream fis = new FileInputStream(file);
      byte bytes[] = new byte[(int) file.length()];
      //Reading data from the file
      fis.read(bytes);
      //Writing data to another file
      File out = new File("D:/CopyOfmyFile.txt");
      FileOutputStream outputStream = new FileOutputStream(out);
      //Writing data to the file
      outputStream.write(bytes);
      outputStream.flush();
      System.out.println("Data successfully written in the specified file");
   }
}

Output

Data successfully written in the specified file

Updated on: 15-Oct-2019

4K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements