Open In App

Java Program to Convert OutputStream to String

Improve
Improve
Like Article
Like
Save
Share
Report

OutputStream is an abstract class that is available in the java.io package. As it is an abstract class in order to use its functionality we can use its subclasses. Some subclasses are FileOutputStream, ByteArrayOutputStream, ObjectOutputStream etc. And a String is nothing but a sequence of characters, use double quotes to represent it. The java.io.ByteArrayOutputStream.toString() method converts the stream using the character set.

Approach 1:

  1. Create an object of ByteArrayoutputStream.
  2. Create a String variable and initialize it.
  3. Use the write method to copy the contents of the string to the object of ByteArrayoutputStream.
  4. Print it.

Example:

Input : String = "Hello World"
Output: Hello World

Below is the implementation of the above approach:

Java




// Java program to demonstrate conversion
// from outputStream to string
 
import java.io.*;
 
class GFG {
 
    // we know that main will throw
    // IOException so we are ducking it
    public static void main(String[] args)
        throws IOException
    {
 
        // declaring ByteArrayOutputStream
        ByteArrayOutputStream stream
            = new ByteArrayOutputStream();
 
        // Initializing string
        String st = "Hello Geek!";
 
        // writing the specified byte to the output stream
        stream.write(st.getBytes());
 
        // converting stream to byte array
        // and typecasting into string
        String finalString
            = new String(stream.toByteArray());
 
        // printing the final string
        System.out.println(finalString);
    }
}


Output

Hello Geek!

Approach 2:

  1. Create a byte array and store ASCII value of the characters.
  2. Create an object of ByteArrayoutputStream.
  3. Use write method to copy the content from the byte array to the object.
  4. Print it.

Example:

Input : array = [71, 69, 69, 75]
Output: GEEK 

Below is the implementation of the above approach:

Java




// Java program to demonstrate conversion
// from outputStream to string
 
import java.io.*;
 
class GFG {
    public static void main(String[] args)
        throws IOException
    {
 
        // Initializing empty string
        // and byte array
        String str = "";
        byte[] bs = { 71, 69, 69, 75, 83, 70, 79,
                      82, 71, 69, 69, 75, 83 };
 
        // create new ByteArrayOutputStream
        ByteArrayOutputStream stream
            = new ByteArrayOutputStream();
 
        // write byte array to the output stream
        stream.write(bs);
 
        // converts buffers using default character set
        // toString is a method for casting into String type
        str = stream.toString();
 
        // print
        System.out.println(str);
    }
}


Output

GEEKSFORGEEKS


Last Updated : 09 Dec, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads