Java Program to Convert OutputStream to String

09 Dec, 2021
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:
Create an object of ByteArrayoutputStream.Create a String variable and initialize it.Use the write method to copy the contents of the string to the object of ByteArrayoutputStream.Print it.
Create an object of ByteArrayoutputStream.
Create a String variable and initialize it.
Use the write method to copy the contents of the string to the object of ByteArrayoutputStream.
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);    }}
Hello Geek!
Approach 2:
Create a byte array and store ASCII value of the characters.Create an object of ByteArrayoutputStream.Use write method to copy the content from the byte array to the object.Print it.
Create a byte array and store ASCII value of the characters.
Create an object of ByteArrayoutputStream.
Use write method to copy the content from the byte array to the object.
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);    }}
GEEKSFORGEEKS
simranarora5sos
Java-String-Programs
Picked
Technical Scripter 2020
Java
Java Programs
Technical Scripter
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.