Java PipedReader klase
The PipedReader klase Java valodā ir daļa no java.io pakotni, un to izmanto rakstzīmju datu nolasīšanai no caurules. Šī klase nodrošina starppavedienu saziņu, kur viens pavediens ieraksta datus, izmantojot PipedWriter, bet otrs tos nolasa, izmantojot PipedReader.
PipedReader klases iezīmes:
- Tas ļauj nolasīt datus caur cauruli.
- Tas izmanto buferi, lai saglabātu datus, kas saņemti no PipedWriter.
- Tas darbojas ar PipedWriter, lai pārliecinātos, ka dati tiek droši pārsūtīti starp pavedieniem.
- Ja caurule saplīst, tiek parādīta kļūda.
Kas ir caurule Java valodā?
Java, lai savienotu divus pavedienus, tiek izmantota caurule. Viens pavediens tiek izmantots, lai nosūtītu datus caur cauruli, un otrs pavediens nolasa datus. Ja pavediens, kas sūta datus, apstājas vai avarē, tiek uzskatīts, ka caurule ir bojāta.
PipedReader klases deklarācija
PipedReader klases deklarācija ir:
publiskā klase PipedReader paplašina Reader
Visas ieviestās saskarnes:
- Aizverams: Šī saskarne tiek izmantota, lai aizvērtu straumi un atbrīvotu resursus, kad tie vairs nav nepieciešami.
- Automātiski aizverams: Šī saskarne nodrošina automātisku resursu pārvaldību izmēģināšanas ar resursiem paziņojumos.
- Lasāms: Šī saskarne ļauj nolasīt datus no straumes.
PipedReader konstruktori
Šī klase sastāv no četriem konstruktoriem, ar kuru palīdzību mēs varam dažādos veidos izveidot šīs klases objektu. Šajā klasē ir pieejami šādi konstruktori:
1. PipedReader(): Šis konstruktors izveido PipedReader, kas vēl nav savienots ar nevienu rakstītāju.
Sintakse:
publiskais PipedReader()
2. PipedReader (int pipeSize): Šis konstruktors izveido aPipedREader ar noteiktu caurules izmēru.
Sintakse:
publiskais PipedReader (int pSize)
3. PipedReader (PipedWriter src): Šis konstruktors izveido PipedReader, kas ir savienots ar PipedWriterStream src.
publiskais PipedReader (PipedWriter src)
4. PipedReader (PipedWriter src int pipeSize): Šis konstruktors izveido savienotu PipedReader ar noteiktu izmēru un ir saistīts ar doto PipedWriter.
Sintakse:
publiskais PipedReader (PipedWriter src int pSize)
Java PipedReaderMethods
Zemāk esošajā attēlā ir parādītas PipedReader klases metodes.
Tagad mēs detalizēti apspriedīsim katru metodi pa vienam:
1. lasīt (): Šo metodi izmanto, lai iegūtu nākamo rakstzīmi no PipedReader. Tas tiek bloķēts, līdz ir nolasāmi dati, vai rodas kļūda.
Sintakse:
public int read() izmet IOException
- Parametrs: Šī metode neņem nekādus parametrus.
- Atgriešanas veids: Šī metode atgriež nākamo rakstzīmi kā veselu skaitli vai atgriež -1, ja tiek sasniegts straumes beigas.
Piemērs:
Java // Demonstrating the working // of read() method import java.io.* ; public class GeeKs { public static void main ( String [] args ) throws IOException { PipedReader r = new PipedReader (); PipedWriter w = new PipedWriter (); // Connect the reader and writer r . connect ( w ); // Write data to the PipedWriter w . write ( 71 ); System . out . println ( 'Read: ' + ( char ) r . read ()); w . write ( 69 ); System . out . println ( 'Read: ' + ( char ) r . read ()); w . write ( 75 ); System . out . println ( 'Read: ' + ( char ) r . read ()); } }
Izvade
Read: G Read: E Read: K
2. lasīt(char[] carray int offset int maxlen): Šo metodi izmanto, lai no PipedReader straumes uz rakstzīmju masīvu nolasītu līdz pat lielākajai rakstzīmei. Metode tiek bloķēta, ja tiek sasniegts straumes beigas vai tiek izdarīts izņēmums.
Sintakse:
public int read(char[] carray int offset int maxlen) izmet IOException
- Parametrs: Šī metode ietver trīs tālāk norādītos parametrus:
- carray: Tas ir buferis, kurā tiks nolasīti dati.
- nobīde: Tā ir sākuma pozīcija masīvā
- Maxlen: Maksimālais rakstzīmju skaits, kas jānolasa masīvā.
- Atgriešanas veids: Šī metode atgriež maksimālos datu baitus kā veselu skaitļa vērtību vai atgriež -1, ja tiek sasniegts straumes beigas
Piemērs:
Java // Demonstrating the working // of read(char[] carray int offset int maxlen) import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { PipedReader r = new PipedReader (); PipedWriter w = new PipedWriter (); r . connect ( w ); // Write data to PipedWriter w . write ( 71 ); // G w . write ( 69 ); // E w . write ( 75 ); // K w . write ( 83 ); // S // Read data into an array char [] b = new char [ 5 ] ; r . read ( b 0 5 ); System . out . print ( 'Read characters: ' ); for ( char c : b ) { System . out . print ( c ); } } }
Izvade
Read characters: GEKS
3. aizvērt(): Šo metodi izmanto, lai aizvērtu PipedReader.
Sintakse:
public void close() izmet IOException
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode neko neatgriež
Piemērs:
Java // Demonstrating the working // of close() method import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { PipedReader r = new PipedReader (); PipedWriter w = new PipedWriter (); r . connect ( w ); w . write ( 71 ); // Close the reader r . close (); System . out . println ( 'Stream closed.' ); } }
Izvade
Stream closed.
4. gatavs(): Šo metodi izmanto, lai pārbaudītu, vai straume ir gatava lasīšanai.
Sintakse:
publiskais Būla gatavs() izmet IOException
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode atgriež vērtību “true”, ja straume ir gatava lasīšanai, pretējā gadījumā tā atgriež vērtību “false”.
Piemērs:
Java // Demonstrating the working // of ready() method import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { PipedReader r = new PipedReader (); PipedWriter w = new PipedWriter (); r . connect ( w ); w . write ( 71 ); // Check if the stream is ready to be read System . out . println ( 'Stream is ready to be read: ' + r . ready ()); } }
Izvade
Stream is ready to be read: true
5. aizvērt(): Šo metodi izmanto, lai aizvērtu PipedReader straumes.
Sintakse:
publisks tukšums aizvērt ()
- Parametrs: Šī metode neņem nekādus parametrus.
- Atgriešanas veids: Šī metode neko neatgriež.
Piemērs:
Java // Demonstrating the working // of close() method import java.io.* ; public class Geeks { public static void main ( String [] args ) { try { // Create a PipedReader and PipedWriter PipedReader r = new PipedReader (); PipedWriter w = new PipedWriter (); // Connect the PipedReader to the PipedWriter r . connect ( w ); // Write a character to the PipedWriter w . write ( 'A' ); // Read and print the character from the PipedReader System . out . println ( 'Read: ' + ( char ) r . read ()); // Output: A // Close the PipedReader stream r . close (); System . out . println ( 'Stream closed.' ); } catch ( IOException e ) { e . printStackTrace (); } } }
Izvade
Read: A Stream closed.Izveidojiet viktorīnu