Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Java
Expertise: Beginner
May 21, 1999

Using Piped Streams in an Application

Java's PipedInputStream and PipedOutputStream classes allow you to write data to an OutputStream object and to read this data from an InputStream object (see the tips "Pass Data Between Threads Using Piped Streams" and "Connecting the Piped Stream Classes"). You can use the two stream classes in an application. Typically, you will create and use the PipedInputStream and PipedOutputStream objects in separate classes and in separate threads. This example shows how the output of the stream "pouts" is piped to the input of the stream "pins". This is a result of connecting the two streams through the PipedOutputStream constructor on Line 7. On Line 11, the byte array "HELLO" is written out to "pouts." On Lines 14 and 15, the byte array is read into "inArray" through "pins" and output to the standard output.
 
1. public class TestPipedStreams {
2. 
3.   public static void main(String[] args) {
4. 	try {
5. 		  
6.      PipedInputStream pins = new PipedInputStream();
7. 	  PipedOutputStream pouts = new PipedOutputStream(pins);
8. 	  
9. 	  byte[] outArray = {'H', 'E', 'L', 'L', 'O'};
10.   pouts.write(outArray, 0, 5);
11.   System.out.println("Wrote " + new String(outArray) + " to pouts");
12. 	  
13. byte[] inArray = new byte[5];
14. pins.read(inArray, 0, 5);
15. System.out.println("Read " + new String(inArray) + " from pins\n");
16. 	}
17.  
18.     catch (Exception e) {
19. 	  e.printStackTrace();
20. 	}
21.   }
Ajit Sagar
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap