codestory

Die Anleitung zu Java CharArrayWriter

  1. CharArrayWriter
  2. Examples

1. CharArrayWriter

CharArrayWriter ist eine Unterklasse von Writer. So gleich wie ihren Name wird CharArrayWriter zum Schreiben der Zeichen in einem Zeichen-Array verwendet, die nach dem Stil von Writer verwaltet.
Die in CharArrayWriter geschriebenen Zeichen werden den Elementen des Zeichen-Arrays zugewiesen, das CharArrayWriter verwaltet:
Wenn die Anzahl der in CharArrayWriter geschriebenen Zeichen größer als die Länger vom Array ist, erstellt CharArrayWriter ein neues Array mit einer größeren Länge und kopiert die Zeichen aus dem alten Array.
Constructors
public CharArrayWriter()  

public CharArrayWriter​(int initialSize)
  • Constructor CharArrayWriter(int) erstellt ein Objekt CharArrayWriter mit dem Zeichenarrray von bestimmten Anfangsgröße.
  • Constructor CharArrayWriter() erstellt ein Objekt CharArrayWriter mit dem Zeichenarray vom Defaultgröße (32).
Methods of CharArrayWriter
public CharArrayWriter append​(char c)
public CharArrayWriter append​(CharSequence csq)
public CharArrayWriter append​(CharSequence csq, int start, int end)

public void close()
public void flush()
public void reset()
public int size()

public char[] toCharArray()
public String toString()

public void write​(char[] c, int off, int len)
public void write​(int c)
public void write​(String str, int off, int len)
public void writeTo​(Writer out)

2. Examples

CharArrayWriterEx1.java
package org.o7planning.chararraywriter.ex;

import java.io.CharArrayWriter;
import java.io.IOException;

public class CharArrayWriterEx1 {

    public static void main(String[] args) throws IOException {
        CharArrayWriter caw = new CharArrayWriter(1024);
        
        caw.append("One").append(" ").append("Two");
        
        caw.write(' ');
        caw.write("Three");

        char[] buffer = caw.toCharArray();
        System.out.println(buffer);
    }
}
Output:
One Two Three
Z.B: 2 Zeichenarray einfügen um ein neues Array zu erstellen
CharArrayWriterEx2.java
package org.o7planning.chararraywriter.ex;

import java.io.CharArrayWriter;
import java.io.IOException;

public class CharArrayWriterEx2 {

    public static void main(String[] args) throws IOException {
        char[] arr1 = "Hello ".toCharArray();
        char[] arr2 = new char[] {'W', 'o', 'r', 'l', 'd', '!'};
        
        char[] result = add(arr1, arr2);
        
        System.out.println(result);
    }

    public static char[] add(char[] arr1, char[] arr2) {
        if (arr1 == null) {
            return arr2;
        }
        if (arr2 == null) {
            return arr1;
        }
        CharArrayWriter writer = new CharArrayWriter();
        try {
            writer.write(arr1);
            writer.write(arr2);
        } catch (Exception e) {
            // Never happened!
        }
        return writer.toCharArray();
    }
}
Output:
Hello World!
CharArrayWriterEx3.java
package org.o7planning.chararraywriter.ex;

import java.io.CharArrayWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class CharArrayWriterEx3 {

    public static void main(String[] args) throws IOException {
        try {
            String s = null;

            s.length(); // NullPointerException
        } catch (Exception e) {
            String stackTrace = getStackTrace(e);
            System.err.println(stackTrace);
        }
    }

    public static String getStackTrace(Throwable t) {
        CharArrayWriter caw = new CharArrayWriter();
        PrintWriter pw = new PrintWriter(caw);

        t.printStackTrace(pw);
        pw.close();

        return caw.toString();
    }
}
Output:
java.lang.NullPointerException
    at org.o7planning.chararraywriter.ex.CharArrayWriterEx3.main(CharArrayWriterEx3.java:13)

Die Anleitungen Java IO

Show More