ChararrayReader
ChararrayReader ist ein Charakter -Array -Eingangsstream. Es ähnelt dem BytearrayInputStream, außer dass BytearrayInputStream der Byte -Array -Eingangsstrom ist, während Chararray der Zeichen -Array -Eingangsstrom ist. ChararrayReader wird verwendet, um ein Charakter -Array zu lesen, das vom Leser geerbt wird. Die Daten des Betriebs sind in Charaktereneinheiten!
ChararrayReader -Funktionsliste:
ChararrayReader (char [] buf) ChararrayReader (char [] buf, int offset, int länge) void close () void mark (int readlimit) boolean marksupported () int () int read (chart [] puffer, int -offset, int len) boolean () void reset () long slip (long charcount)
Beispielcode:
Für eine detaillierte Verwendung der API in ChararrayReader finden Sie den Beispielcode (ChararrayReeTest.java):
importieren java.io.ararrayreader; import java.io.ararraywriter; import Java.io.ioException; öffentliche Klasse ChararrayReertest {private statische endgültige Int len = 5; // entspricht dem englischen Brief "AbcdefghijklMnopqrstuvwxyz" Private statische endgültige char [] Arrayletters = new char [] {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; public static void main (String [] args) {teararrayReader (); } / *** ChararrayReader -API -Testfunktion* / private statische void teararrarayReader () {try {// Erstellen Sie einen ChararrayReader -Charakter -Stream, der Inhalt ist der Arrayletter -Array ChararrayReader Car = New Chararrayreader (Arrayletters); // 5 Zeichen aus dem Zeichen -Array -Stream für (int i = 0; i <len; i ++) {// Wenn Sie das nächste Zeichen weiter lesen können, lesen Sie das nächste Zeichen, wenn (car.ready () == true) {// Lesen Sie "Nächstes Zeichen des Zeichenstroms" char tmp = (char) car.read (); System.out.printf (" %d: %c/n", i, tmp); }} // Wenn "dieser Zeichenstrom" die Tagging -Funktion nicht unterstützt, beenden Sie dann if (! Car.marksSupported ()) {System.out.println ("Nicht unterstützt!"); zurückkehren ; } // markieren Sie "Die nächste gelesene Position im Zeichenstrom". Das heißt, - markieren "f", weil zuvor 5 Zeichen gelesen wurden, die nächste Leseposition ist das 6. Zeichen "// (01)," Parameter 0 "in der Mark (0) -Funktion der ChararrayReader -Klasse hat keine praktische Bedeutung. // (02), mark () und Reset () -Marke, reset (). Skip 5 characters. After skipping 5 characters, the next read value in the character stream should be "k". car.skip(5); // Read 5 data from the character stream. That is, read "klmno" char[] buf = new char[LEN]; car.read(buf, 0, LEN); System.out.printf("buf=%s/n", String.valueOf(buf)); // Reset "character Stream ": Das heißt, die nächste Leseposition im Zeichenstrom" in "die von Mark () gekennzeichnete Position" ", dh, f. car.reset (); // 5 Zeichen aus dem" Reset -Charakter -Stream "in buf. Das heißt, lesen" fghij "car.read (buf, len). (IoException e) {e.printstacktrace (); }}} Auslaufergebnisse:
0: A1: B2: C3: D4: EBUF = klmnobuf = fghij
Chararraywriter
ChararrayReader wird verwendet, um Datenzeichen zu schreiben, die vom Schriftsteller geerbt werden. Die Daten des Betriebs sind in Charaktereneinheiten!
ChararrayWriter -Funktionsliste
CharArrayWriter()CharArrayWriter(int initialSize)CharArrayWriter append(CharSequence csq, int start, int end)CharArrayWriter append(char c)CharArrayWriter append(CharSequence csq)void close()void flush()void reset()int size()char[] toCharArray()String toString()void write(char[] buffer, int offset, int len) void write (int anChar) void write (String str, int offset, int count) void writeTo (writer out)
Beispielcode:
Für eine detaillierte Verwendung der API in ChararrayWriter finden Sie den Beispielcode (ChararrayWritertest.java):
Importieren Sie Java.io.CharArrayReader; Import Java.io.CharArrayWriter; Import Java.io.ioException; öffentliche Klasse ChararrayWritertest {private statische endgültige Int len = 5; // entspricht dem englischen Brief "AbcdefghijklMnopqrstuvwxyz" Private statische endgültige char [] Arrayletters = new char [] {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; public static void main (String [] args) {teararrayWriter (); } / *** ChararrayWriter -API -Testfunktion* / private statische void teararraywriter () {try {// ChararrayWriter Charakter Stream ChararrayWriter CAW = new ChararrayWriter (); // Schreiben Sie "a" charaturs caw.write ('a'); // "BC" -Scharns caw.write ("bc") schreiben; //System.out.printf("caw=%S/n ", CAW); // Schreiben Sie die letzten 5 Zeichen (Defgh) von "3" in das Arrayletter -Array an CAW. CAW.Write (Arrayletters, 3, 5); //System.out.printf("caw=%S/n ", CAW); // (01) Schreiben Sie Zeichen 0 // (02) und schreiben Sie dann "123456789" // (03) und schreiben Sie dann die Zeichen 8-12 in Arrayletter (IJKL) CAW.Append ('0'). Append ("123456789"). Append (String.Valueof (Arrayletters), 8, 12); System.out.printf ("CAW =%S/N", CAW); // Länge int size = caw.size () berechnen; System.out.printf ("size =%s/n", Größe); // in Byte [] Array char [] buf = caw.toarArray () konvertieren; System.out.printf ("buf =%s/n", String.Valueof (buf)); // CAW in einen anderen Ausgangsstrom ChararrayWriter CAW2 = New ChararrayWriter () schreiben; CAW.Writeto (CAW2); System.out.printf ("CAW2 =%S/N", CAW2); } catch (ioException e) {e.printstacktrace (); }}} Auslaufergebnisse:
CAW = ABCDEFGH0123456789IJKLSIZE = 22BUF = ABCDEFGH0123456789IJKLCAW2 = ABCDEFGH0123456789IJKL