java.lang.Object
java.io.Writer
java.io.StringWriter
- すべての実装されたインタフェース:
Closeable
,Flushable
,Appendable
,AutoCloseable
public class StringWriter extends Writer
出力を文字列バッファに集める文字ストリームです。この文字列バッファを使って文字列を構築します。
StringWriter
を閉じても、何の影響もありません。 IOException
を生成せずにストリームが閉じられたあとで、このクラスのメソッドを呼び出すことができます。
- 導入されたバージョン:
- 1.1
-
フィールドのサマリー
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明デフォルトの初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。StringWriter
(int initialSize) 指定された初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明append
(char c) 指定された文字をこのライターに追加します。append
(CharSequence csq) 指定された文字シーケンスをこのライターに追加します。append
(CharSequence csq, int start, int end) 指定された文字シーケンスのサブシーケンスをこのライターに追加します。void
close()
StringWriter
を閉じても、何の影響もありません。void
flush()
ストリームをフラッシュします。文字列バッファそのものを返します。toString()
バッファの現在の値を文字列として返します。void
write
(char[] cbuf, int off, int len) 文字の配列の一部を書き込みます。void
write
(int c) 単一の文字を書き込みます。void
文字列を書き込みます。void
文字列の一部を書き込みます。クラス java.io.Writerで宣言されたメソッド
nullWriter, write
-
コンストラクタの詳細
-
StringWriter
public StringWriter()デフォルトの初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。 -
StringWriter
public StringWriter(int initialSize) 指定された初期文字列バッファ・サイズを使って、新しい文字列ライターを作成します。- パラメータ:
initialSize
- このバッファが自動的に拡張される前にこのバッファに収まるchar
値の数- throws:
IllegalArgumentException
-initialSize
が負の値の場合
-
-
メソッドの詳細
-
write
public void write(int c) 単一の文字を書き込みます。 -
write
public void write(char[] cbuf, int off, int len) 文字の配列の一部を書き込みます。- 定義:
write
、クラスWriter
- パラメータ:
cbuf
- 文字の配列off
- 文字の書込み開始オフセットlen
- 書き込む文字数- throws:
IndexOutOfBoundsException
-off
が負の場合、またはlen
が負の場合、またはoff + len
が負の場合、または指定された配列の長さより大きい場合
-
write
public void write(String str) 文字列を書き込みます。 -
write
public void write(String str, int off, int len) 文字列の一部を書き込みます。- オーバーライド:
write
、クラスWriter
- パラメータ:
str
- 書き込まれる文字列off
- 文字の書込み開始オフセットlen
- 書き込む文字数- throws:
IndexOutOfBoundsException
-off
が負の場合、len
が負の場合、またはoff + len
が負であるか、指定された文字列の長さよりも大きい場合
-
append
public StringWriter append(CharSequence csq) 指定された文字シーケンスをこのライターに追加します。このメソッドを
out.append(csq)
の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。out.write(csq.toString())
charシーケンス
csq
に対するtoString
の指定に応じて、シーケンス全体が追加されないこともあります。 たとえば、charバッファのtoString
メソッドを呼び出した場合、そのバッファの位置とリミットによって決まる内容を持つサブシーケンスが返されます。- 定義:
append
、インタフェースAppendable
- オーバーライド:
append
、クラスWriter
- パラメータ:
csq
- 追加するcharシーケンス。csq
がnull
の場合は、このライターに「null」
という4文字が追加される。- 戻り値:
- このライター
- 導入されたバージョン:
- 1.5
-
append
public StringWriter append(CharSequence csq, int start, int end) 指定された文字シーケンスのサブシーケンスをこのライターに追加します。csq
がnull
でないときに、このメソッドをout.append(csq, start, end)
の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。out.write(csq.subSequence(start, end).toString())
- 定義:
append
、インタフェースAppendable
- オーバーライド:
append
、クラスWriter
- パラメータ:
csq
- サブシーケンスの追加元のcharシーケンス。csq
がnull
の場合は、csq
に「null」
という4 charが含まれているかのようにcharが追加されるstart
- サブシーケンスの最初のcharのインデックスend
- サブシーケンスの最後のcharのあとに続くcharのインデックス- 戻り値:
- このライター
- throws:
IndexOutOfBoundsException
-start
またはend
が負の値の場合、start
がend
よりも大きい場合、あるいはend
がcsq.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()バッファの現在の値を文字列として返します。 -
getBuffer
public StringBuffer getBuffer()文字列バッファそのものを返します。- 戻り値:
- 現在のバッファ値を保持するStringBuffer。
-
flush
public void flush()ストリームをフラッシュします。StringWriter
のflush
メソッドは何もしません。 -
close
public void close() throws IOExceptionStringWriter
を閉じても、何の影響もありません。IOException
を生成せずにストリームが閉じられたあとで、このクラスのメソッドを呼び出すことができます。- 定義:
close
、インタフェースAutoCloseable
- 定義:
close
、インタフェースCloseable
- 定義:
close
、クラスWriter
- throws:
IOException
- 入出力エラーが発生した場合
-