|
intra-mart(R) 5.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.io.Writer jp.co.intra_mart.common.aid.jdk.java.io.ReplaceWriter
このクラスは、部分文字列を別な部分文字列へ置換しながら
ストリームに文字列を書き込むためのストリームフィルタを実装します。
置換対象となる部分文字列と置換する文字列の長さは同じ必要はありません。
置換対象となる文字データと異なる長さの文字データを置換後のデータとして
指定することも可能です。この場合、
このクラスによって基礎ストリームに書き込まれるデータ量は、
元のデータ量と変化します。
java.io.StringWriter sw = new java.io.StringWriter();文字データ "abc" は、"xyz" に変化します。この場合、以下のように 記述しても同様の結果が得られます。
ReplaceWriter rw = new ReplaceWriter(sw, "abc", "xyz");
rw.write("abc"); String result = sw.toString();
java.io.StringWriter sw = new java.io.StringWriter();
ReplaceWriter rw = new ReplaceWriter(sw, "abc", "xyz");
rw.write("a"); rw.write("b"); rw.write("c"); String result = sw.toString();
フィールドの概要 |
クラス java.io.Writer から継承したフィールド |
lock |
コンストラクタの概要 | |
ReplaceWriter(Writer out,
char[] oldChars)
文字列削除のためのストリームフィルタを作成します。 |
|
ReplaceWriter(Writer out,
char[] oldChars,
char[] newChars)
文字列置換のためのストリームフィルタを作成します。 |
|
ReplaceWriter(Writer out,
String oldString)
文字列削除のためのストリームフィルタを作成します。 |
|
ReplaceWriter(Writer out,
String oldString,
String newString)
文字列置換のためのストリームフィルタを作成します。 |
メソッドの概要 | |
void |
close()
ストリームを閉じてフラッシュします。 |
void |
finish()
バッファに保存してあるデータを書き出します。 |
void |
flush()
ストリームをフラッシュします。 |
void |
write(char[] cbuf,
int off,
int len)
文字列の一部を基礎ストリームに書き込みます。 |
void |
write(int c)
単一文字を書き込みます。 |
クラス java.io.Writer から継承したメソッド |
write, write, write |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public ReplaceWriter(Writer out, char[] oldChars)
out
- 基礎ストリームoldChars
- 削除対象となる文字の配列public ReplaceWriter(Writer out, String oldString)
out
- 基礎ストリームoldString
- 削除対象となる文字列public ReplaceWriter(Writer out, char[] oldChars, char[] newChars)
out
- 基礎ストリームoldChars
- 置換対象となる文字の配列newChars
- 置換する文字の配列public ReplaceWriter(Writer out, String oldString, String newString)
out
- 基礎ストリームoldString
- 置換対象となる文字列newString
- 置換する文字列メソッドの詳細 |
public void write(int c) throws IOException
c
- 文字
IOException
- 入出力エラーが発生した場合public void write(char[] cbuf, int off, int len) throws IOException
cbuf
- 文字の配列off
- 文字の書き込み開始オフセットlen
- 書き込む文字数
IOException
- 入出力エラーが発生した場合public void finish() throws IOException
ストリームがさまざまな write() メソッドからの文字をバッファに
保存してある場合、これらの文字を基礎ストリームへただちに
書き込みます。
このメソッドは、このストリームの持つ置換対象データと比較中の
文字データを含むすべてのバッファを基礎ストリームに書き込みます。
このメソッドを呼び出し後は、write() メソッドによって与えられる
データを改めて検索し直します。この機能のより、このストリームフィルタの
複数のストリームでの再利用が可能となります。
このときストリームは閉じられません。 複数のフィルタを同じ出力ストリームに連続して適用するときに このメソッドを使用します。
IOException
- 入出力エラーが発生した場合public void flush() throws IOException
現在バッファに保存されているデータが置換対象の文字データと
比較途中である場合、比較中のデータはフラッシュされません。
このストリームの持つすべてのバッファをフラッシュするためには、
finish() メソッドを呼び出したあとにこのメソッドを呼び出して下さい。
宛先が別の文字またはバイトストリームの場合は、
この宛先をフラッシュします。つまり 1 つの flush() の呼び出しで、
関連する Writer および OutputStream のすべてのバッファを
フラッシュします。
IOException
- 入出力エラーが発生した場合public void close() throws IOException
IOException
- 入出力エラーが発生した場合
|
intra-mart(R) 5.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |