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.
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.
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