Java.io.PipedOutputStream klasė Java

Java.io.PipedOutputStream klasė Java

Java.io.PipedInputStream klasė Java

io.PipedOutputStream klasė Java


Vamzdžiai IO pateikia ryšį tarp dviejų gijų, veikiančių JVM tuo pačiu metu. Taigi vamzdžiai naudojami ir kaip šaltinis, ir kaip paskirties vieta.  

  • „PipedInputStream“ taip pat perduodama naudojant „PipedOutputStream“. Taigi duomenys gali būti rašomi naudojant PipedOutputStream ir gali būti rašomi naudojant PipedInputStream. Tačiau naudojant abi gijas vienu metu atsiras aklavietė.
  • PipedOutputStream siunčia vamzdžio galą. Duomenys įrašomi į PipedOutputStream. Teigiama, kad vamzdis nutrūkęs, jei PipedInputStream, kuris skaitė duomenis, nebėra.

Deklaracija:   

 public class PipedOutputStream   
extends OutputStream

Konstruktorius:   

  • PipedOutputStream() : sukuria PipedOutputStream, kad jis nėra prijungtas.
  • PipedOutputStream (PipedOutputStream inStream) : sukuria PipedOutputStream, kad jis 
    yra prijungtas prie PipedInputStream – „inStream“.

Metodai: 

write() : java.io.PipedOutputStream.write(int byte) įrašo nurodytą baitą į vamzdžių išvesties srautą. 

Sintaksė: 

    public void write(int byte)     

Parameters :
byte : byte to be written

Return : void
Exception :
-> IOException : if in case IO error occurs.

write(byte[] buffer int offset int maxlen) : java.io.PipedOutputStream.write(byte[] buffer int offset int maxlen) įrašo didžiausius baitus duomenų iš buferio į vamzdžių išvesties srautą. Metodas blokuoja, jei į srautą neįrašomi baitai. 

Sintaksė: 

    public void write(byte[] buffer int offset int maxlen)     

Parameters :
buffer : data of the buffer
offset : starting in the destination array - 'buffer'.
maxlen : maximum length of array to be read

Return : void
Exception :
-> IOException : if in case IO error occurs. Java
   // Java program illustrating the working of PipedInputStream   // write(byte[] buffer int offset int maxlen)   import     java.io.*  ;   public     class   NewClass   {      public     static     void     main  (  String  []     args  )     throws     IOException      {      PipedInputStream     geek_input     =     new     PipedInputStream  ();      PipedOutputStream     geek_output     =     new     PipedOutputStream  ();      // Use of connect() : connecting geek_input with geek_output      geek_input  .  connect  (  geek_output  );      byte  []     buffer     =     {  'J'       'A'       'V'       'A'  };      // Use of write(byte[] buffer int offset int maxlen)      geek_output  .  write  (  buffer       0       4  );      int     a     =     5  ;      System  .  out  .  print  (  'Use of write(buffer offset maxlen) : '  );      while  (  a  >  0  )      {      System  .  out  .  print  (  ' '     +     (  char  )     geek_input  .  read  ());      a  --  ;      }      }   }   

Išvestis: 

 Use of write(buffer offset maxlen) : J A V A   
  • uždaryti() : java.io.PipedOutputStream.close() uždaro vamzdyno išvesties srautą ir išleidžia paskirtus išteklius. 
    Sintaksė: 
 public void close()   
Parameters :
--------------
Return :
void
Exception :
-> IOException : if in case IO error occurs.
  • connect(PipedInputStream paskirties vieta) : java.io.PipedOutputStream.connect(PipedInputStream paskirties vieta sujungia vamzdžių išvesties srautą su vamzdyno įvesties srautu „paskirties vieta“ ir tuo atveju, jei „paskirties vieta“ yra vamzdžiai su kita srauto IO išimtimi 
    Sintaksė: 
 public void connect(PipedInputStream destination)   
Parameters :
destination : the Piped Input Stream to be connected to
Return :
void
Exception :
-> IOException : if in case IO error occurs.
  • flush() : java.io.PipedOutputStream.flush() išplauna išvesties srautą. 
    Sintaksė: 
 public void flush()   
Parameters :
------------
Return :
void
Exception :
-> IOException : if in case IO error occurs.

Java kodas, iliustruojantis PipedOutputStream klasės metodų veikimą: 

Java
   // Java program illustrating the working of PipedInputStream   // write() write(byte[] buffer int offset int maxlen)   // close() flush() connect()   import     java.io.*  ;   public     class   NewClass   {      public     static     void     main  (  String  []     args  )     throws     IOException      {      PipedInputStream     geek_input     =     new     PipedInputStream  ();      PipedOutputStream     geek_output     =     new     PipedOutputStream  ();      try      {      // Use of connect() : connecting geek_input with geek_output      geek_input  .  connect  (  geek_output  );      // Use of write(int byte) :      geek_output  .  write  (  71  );      geek_output  .  write  (  69  );      geek_output  .  write  (  69  );      geek_output  .  write  (  75  );      geek_output  .  write  (  83  );      // Use of flush() method :      geek_output  .  flush  ();      System  .  out  .  println  (  'Use of flush() method : '  );      int     i     =     5  ;      while  (  i     >     0  )      {      System  .  out  .  print  (  ' '     +     (  char  )     geek_input  .  read  ());      i  --  ;      }      // USe of close() method :      System  .  out  .  println  (  'nClosing the Output stream'  );      geek_output  .  close  ();      }      catch     (  IOException     except  )      {      except  .  printStackTrace  ();      }      }   }   

Išvestis: 

 Use of flush() method :    
G E E K S
Closing the Output stream


 

Sukurti viktoriną