モジュール java.base
パッケージ java.io

クラスCharArrayWriter

java.lang.Object
java.io.Writer
java.io.CharArrayWriter
すべての実装されたインタフェース:
Closeable, Flushable, Appendable, AutoCloseable

public class CharArrayWriter
extends Writer
Writerとして使用する文字バッファを実装します。 ストリームに文字が書き込まれるに従って、バッファは自動的に大きくなります。 toCharArray()やtoString()を使ってデータを取り出すことができます。

注: このクラスでclose()を呼び出しても、何も変化はありません。ストリームを閉じたあとにこのクラスのメソッドを呼び出しても、IOExceptionは生成されません。

導入されたバージョン:
1.1
  • フィールドのサマリー

    フィールド 
    修飾子と型 フィールド 説明
    protected char[] buf
    データが格納されるバッファです。
    protected int count
    バッファの中の文字数です。

    クラス java.io.Writerで宣言されたフィールド

    lock
  • コンストラクタのサマリー

    コンストラクタ 
    コンストラクタ 説明
    CharArrayWriter()
    CharArrayWriterを新しく作成します。
    CharArrayWriter​(int initialSize)
    指定された初期サイズでCharArrayWriterを新しく作成します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    CharArrayWriter append​(char c)
    指定された文字をこのライターに追加します。
    CharArrayWriter append​(CharSequence csq)
    指定された文字シーケンスをこのライターに追加します。
    CharArrayWriter append​(CharSequence csq, int start, int end)
    指定された文字シーケンスのサブシーケンスをこのライターに追加します。
    void close()
    ストリームを閉じます。
    void flush()
    ストリームをフラッシュします。
    void reset()
    メモリー割当て済みのバッファを廃棄せずに再使用できるように、バッファをリセットします。
    int size()
    バッファの現在のサイズを返します。
    char[] toCharArray()
    入力データのコピーを返します。
    String toString()
    入力データを文字列に変換します。
    void write​(char[] c, int off, int len)
    バッファに文字を書き込みます。
    void write​(int c)
    バッファに単一の文字を書き込みます。
    void write​(String str, int off, int len)
    文字列の一部をバッファに書き込みます。
    void writeTo​(Writer out)
    バッファの内容を別の文字ストリームに書き込みます。

    クラス java.io.Writerで宣言されたメソッド

    nullWriter, write, write

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait
  • フィールド詳細

    • buf

      protected char[] buf
      データが格納されるバッファです。
    • count

      protected int count
      バッファの中の文字数です。
  • コンストラクタの詳細

    • CharArrayWriter

      public CharArrayWriter()
      CharArrayWriterを新しく作成します。
    • CharArrayWriter

      public CharArrayWriter​(int initialSize)
      指定された初期サイズでCharArrayWriterを新しく作成します。
      パラメータ:
      initialSize - バッファの初期サイズを指定するint。
      例外:
      IllegalArgumentException - initialSizeが負の値の場合
  • メソッドの詳細

    • write

      public void write​(int c)
      バッファに単一の文字を書き込みます。
      オーバーライド:
      write、クラス: Writer
      パラメータ:
      c - 書き込まれる文字を指定するint
    • write

      public void write​(char[] c, int off, int len)
      バッファに文字を書き込みます。
      定義:
      write、クラス: Writer
      パラメータ:
      c - 書き込まれるデータ
      off - データ内の開始オフセット
      len - 書き込む文字数
      例外:
      IndexOutOfBoundsException - offが負の場合、またはlenが負の場合、またはoff + lenが負の場合、または指定された配列の長さより大きい場合
    • write

      public void write​(String str, int off, int len)
      文字列の一部をバッファに書き込みます。
      オーバーライド:
      write、クラス: Writer
      パラメータ:
      str - 書き込まれる文字列
      off - 文字の読込み開始オフセット
      len - 書き込む文字数
      例外:
      IndexOutOfBoundsException - offが負の場合、lenが負の場合、またはoff + lenが負であるか、指定された文字列の長さよりも大きい場合
    • writeTo

      public void writeTo​(Writer out) throws IOException
      バッファの内容を別の文字ストリームに書き込みます。
      パラメータ:
      out - 書込み先の出力ストリーム
      例外:
      IOException - 入出力エラーが発生した場合。
    • append

      public CharArrayWriter append​(CharSequence csq)
      指定された文字シーケンスをこのライターに追加します。

      このメソッドをout.append(csq)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

           out.write(csq.toString()) 

      charシーケンスcsqに対するtoStringの指定に応じて、シーケンス全体が追加されないこともあります。 たとえば、charバッファのtoStringメソッドを呼び出した場合、そのバッファの位置とリミットによって決まる内容を持つサブシーケンスが返されます。

      定義:
      append、インタフェース: Appendable
      オーバーライド:
      append、クラス: Writer
      パラメータ:
      csq - 追加するcharシーケンス。 csqnullの場合は、このライターに「null」という4文字が追加される。
      戻り値:
      このライター
      導入されたバージョン:
      1.5
    • append

      public CharArrayWriter append​(CharSequence csq, int start, int end)
      指定された文字シーケンスのサブシーケンスをこのライターに追加します。

      csqnullでないときに、このメソッドをout.append(csq, start, end)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

           out.write(csq.subSequence(start, end).toString()) 

      定義:
      append、インタフェース: Appendable
      オーバーライド:
      append、クラス: Writer
      パラメータ:
      csq - サブシーケンスの追加元のcharシーケンス。 csqnullの場合は、csq「null」という4 charが含まれているかのようにcharが追加される
      start - サブシーケンスの最初のcharのインデックス
      end - サブシーケンスの最後のcharのあとに続くcharのインデックス
      戻り値:
      このライター
      例外:
      IndexOutOfBoundsException - startまたはendが負の値の場合、startendよりも大きい場合、あるいはendcsq.length()よりも大きい場合
      導入されたバージョン:
      1.5
    • append

      public CharArrayWriter append​(char c)
      指定された文字をこのライターに追加します。

      このメソッドをout.append(c)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。

           out.write(c) 

      定義:
      append、インタフェース: Appendable
      オーバーライド:
      append、クラス: Writer
      パラメータ:
      c - 追加する16ビット文字
      戻り値:
      このライター
      導入されたバージョン:
      1.5
    • reset

      public void reset()
      メモリー割当て済みのバッファを廃棄せずに再使用できるように、バッファをリセットします。
    • toCharArray

      public char[] toCharArray()
      入力データのコピーを返します。
      戻り値:
      この入力データからコピーされた文字の配列。
    • size

      public int size()
      バッファの現在のサイズを返します。
      戻り値:
      バッファの現在のサイズを表すint。
    • toString

      public String toString()
      入力データを文字列に変換します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      文字列
    • flush

      public void flush()
      ストリームをフラッシュします。
      定義:
      flush、インタフェース: Flushable
      定義:
      flush、クラス: Writer
    • close

      public void close()
      ストリームを閉じます。 このメソッドの内容は以降も要求されるので、バッファは解放されません。 注: このクラスのこのメソッドを呼び出しても、何の効果もありません。
      定義:
      close、インタフェース: AutoCloseable
      定義:
      close、インタフェース: Closeable
      定義:
      close、クラス: Writer