read(): This method is available in the java.io.PipedInputStream class of Java.
Syntax:
int java.io.PipedInputStream.read() throws IOException
This method reads the next byte of data from this piped input stream.
The value byte is returned as an int in the range 0 to 255. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.
Parameters: NA
Returns: the next byte of data, or -1 if the end of the stream is reached.
Throws:
IOException - if the pipe is unconnected, broken, closed, or if an I/O error occurs.
Approach 1: When no exception
Java
import java.io.IOException;import java.io.PipedInputStream;import java.io.PipedOutputStream;public class PipedInputStreamread {public static void main(String[] args) throws IOException {PipedInputStream pipedInputStream =new PipedInputStream();PipedOutputStream src = new PipedOutputStream();pipedInputStream.connect(src);System.out.println(pipedInputStream.read());pipedInputStream.close();}}
Output:
-1
Approach 2: IOException
Java
package com.PipedInputStream;import java.io.IOException;import java.io.PipedInputStream;public class PipedInputStreamread {public static void main(String[] args) throws IOException {PipedInputStream pipedInputStream =new PipedInputStream();System.out.println(pipedInputStream.read());pipedInputStream.close();}}
Output:
Exception in thread "main" java.io.IOException: Pipe not connected at java.base/java.io.PipedInputStream.read(PipedInputStream.java:305) at com.PipedInputStream.PipedInputStreamread.main(PipedInputStreamread.java:11)
Some other methods of PipedInputStream
close(): This method closes this piped input stream and releases any system resources associated with the stream.
connect(PipedOutputStream): This method causes this piped input stream to be connected to the piped output stream src.
available(): This method returns the number of bytes that can be read from this input stream without blocking.
PipedInputStream(): This method creates a PipedInputStream so that it is not yet connected.
PipedInputStream(int): This method creates a PipedInputStream so that it is not yet connected and uses the specified pipe size for the pipe's buffer.
PipedInputStream(PipedOutputStream): This method creates a PipedInputStream so that it is connected to the piped output stream src.
PipedInputStream(PipedOutputStream, int): This method creates a PipedInputStream so that it is connected to the piped output stream src and uses the specified pipe size for the pipe's buffer.
read(): This method reads the next byte of data from this piped input stream.
read(byte[], int, int): This method reads up to len bytes of data from this piped input stream into an array of bytes.
No comments:
Post a Comment