クラスStringWriter

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

public class StringWriter extends Writer
出力を文字列バッファに集める文字ストリームです。この文字列バッファを使って文字列を構築します。

StringWriterをクローズしても効果はありません。 このクラスのメソッドは、IOExceptionを生成せずにストリームがクローズされた後にコールできます。

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

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

    lock
    修飾子と型
    フィールド
    説明
    protected Object
    このストリームに対する処理の同期に使用するオブジェクトです。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    デフォルトの初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。
    StringWriter(int initialSize)
    指定された初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    append(char c)
    指定された文字をこのライターに追加します。
    指定された文字シーケンスをこのライターに追加します。
    append(CharSequence csq, int start, int end)
    指定された文字シーケンスのサブシーケンスをこのライターに追加します。
    void
    StringWriterをクローズしても効果はありません。
    void
    ストリームをフラッシュします。
    文字列バッファそのものを返します。
    バッファの現在の値を文字列として返します。
    void
    write(char[] cbuf, int off, int len)
    文字の配列の一部を書き込みます。
    void
    write(int c)
    単一の文字を書き込みます。
    void
    文字列を書き込みます。
    void
    write(String str, int off, int len)
    文字列の一部を書き込みます。

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

    nullWriter, write
    修飾子と型
    メソッド
    説明
    static Writer
    すべての文字を破棄する新規Writerを返します。
    void
    write(char[] cbuf)
    文字の配列を書き込みます。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • StringWriter

      public StringWriter()
      デフォルトの初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。
    • StringWriter

      public StringWriter(int initialSize)
      指定された初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。
      パラメータ:
      initialSize - 自動的に展開される前に、このバッファに収まるchar値の数
      スロー:
      IllegalArgumentException - initialSizeが負の場合
  • メソッドの詳細

    • write

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

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

      public void write(String str)
      文字列を書き込みます。
      オーバーライド:
      write、クラスWriter
      パラメータ:
      str - 書き込まれる文字列
    • write

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

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

      csqnullでない場合、out.append(csq)という形式のこのメソッドの起動は、呼出しとまったく同じように動作

          out.write(csq.toString())
      

      文字シーケンスcsqtoStringの指定によっては、シーケンス全体が追加されない場合があります。 たとえば、文字バッファのtoStringメソッドを呼び出すと、内容がバッファの位置と制限によって異なる部分列が返されます。

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

      public StringWriter 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に4文字の"null"が含まれているかのように、文字が追加されます。
      start - サブシーケンスの最初のcharのインデックス
      end - サブシーケンスの最後のcharのあとに続くcharのインデックス
      戻り値:
      このライター
      スロー:
      IndexOutOfBoundsException - startまたはendが負の場合、startendより大きいか、endcsq.length()より大きいです
      導入されたバージョン:
      1.5
    • append

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

      out.append(c)形式のこのメソッドの起動は、起動とまったく同じように動作

          out.write(c)
      

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

      public String toString()
      バッファの現在の値を文字列として返します。
      オーバーライド:
      toString、クラスObject
      戻り値:
      このオブジェクトの文字列表現
    • getBuffer

      public StringBuffer getBuffer()
      文字列バッファそのものを返します。
      戻り値:
      現在のバッファ値を保持するStringBuffer。
    • flush

      public void flush()
      ストリームをフラッシュします。

      StringWriterflushメソッドは何もしません。

      定義:
      flush、インタフェースFlushable
      定義:
      flush、クラスWriter
    • close

      public void close() throws IOException
      StringWriterをクローズしても効果はありません。 このクラスのメソッドは、IOExceptionを生成せずにストリームがクローズされた後にコールできます。
      定義:
      close、インタフェースAutoCloseable
      定義:
      close、インタフェースCloseable
      定義:
      close、クラスWriter
      スロー:
      IOException - 入出力エラーが発生した場合