public class hiTextWriter extends PrintWriter
PrintStream,PrintWriterの何れかに文字列出力を行う.
非常に残念な事にJavaの文字列出力の仕組みは極めて混乱
した状況にあります。
SUNとしてはPrintWriterを勧めていますが、System.out,{java.lang.System#err System.err}
がPrintStreamである以上、文字列出力APIとしては両方用意せざる
を得ません。
PrintStreamからPrintWriterを得ることはできますが、その場合
PrintStreamに設定してあった文字セットは引き継がれません。
従って例えば次のような形で処理を一本にまとめることはできません。
// 利用者プログラム
void boo(){
PrintStream ps;
// psを文字セットしていでオープン
foo(ps);
}
// ライブラリ側
public void foo(PrintStream ps){
foo(new PrintWriter(ps));//文字セットはシステム標準になってしまう!
}
public void foo(PrintWriter pw){
// ... 出力処理
}
hiTextWriterは内部にPrintStreamオブジェクトを内部に保持することが 可能で、PrintStreamを持つ場合はPrintStreamにPrintStreamの メソッドで出力します。
次のように使います。
// ライブラリ側
public void foo(PrintStream ps){
foo(new hiTextWriter(ps));
}
public void foo(PrintWriter pw){
// ... 出力処理
}
| コンストラクタと説明 |
|---|
hiTextWriter(PrintStream ps_)
PrintStreamを登録する.
|
hiTextWriter(PrintWriter pw_)
PrintWriterを登録する.
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
PrintWriter |
append(char c_)
登録ストリームに文字を追加する.
|
PrintWriter |
append(CharSequence csq_)
登録ストリームに文字シーケンスを追加する.
|
PrintWriter |
append(CharSequence csq_,
int start_,
int end_)
登録ストリームに文字シーケンスを追加する.
|
boolean |
checkError()
登録ストリームのエラーチェックを呼ぶ.
|
void |
close()
登録ストリームをクローズする
登録ストリームをクローズします。
|
void |
flush()
登録ストリームをフラッシュする
|
PrintWriter |
format(Locale l_,
String format_,
Object... args_)
登録ストリームに指定フォーマット出力を行う
|
PrintWriter |
format(String format_,
Object... args_)
登録ストリームに指定フォーマット出力を行う
|
void |
print(boolean b_)
登録ストリームにデータ文字列出力を行う
|
void |
print(char c_)
登録ストリームにデータ文字列出力を行う
|
void |
print(char[] s_)
登録ストリームにデータ文字列出力を行う
|
void |
print(double d_)
登録ストリームにデータ文字列出力を行う
|
void |
print(float f_)
登録ストリームにデータ文字列出力を行う
|
void |
print(int i_)
登録ストリームにデータ文字列出力を行う
|
void |
print(long l_)
登録ストリームにデータ文字列出力を行う
|
void |
print(Object o_)
登録ストリームにデータ文字列出力を行う
|
void |
print(String s_)
登録ストリームにデータ文字列出力を行う
|
PrintWriter |
printf(Locale l_,
String format_,
Object... args_)
登録ストリームに指定フォーマット出力を行う.
|
PrintWriter |
printf(String format_,
Object... args_)
登録ストリームに指定フォーマット出力を行う
format(String,Object...)と同じです
|
void |
println()
登録ストリームを改行する
|
void |
println(boolean b_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(char c_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(char[] s_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(double d_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(float f_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(int i_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(long l_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(Object o_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
println(String s_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
write(char[] s_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
write(char[] s_,
int off_,
int len_)
登録ストリームに改行付きでデータ文字列出力を行う
|
void |
write(int c_)
登録ストリームに文字出力を行う
|
void |
write(String s_)
登録ストリームに文字列出力を行う
|
void |
write(String s_,
int off_,
int len_)
登録ストリームに文字列出力を行う
|
public hiTextWriter(PrintStream ps_)
ps_ - PrintStreampublic hiTextWriter(PrintWriter pw_)
pw_ - PrintWriterpublic PrintWriter append(char c_)
append インタフェース内 Appendableappend クラス内 PrintWriterc_ - 文字public PrintWriter append(CharSequence csq_)
append インタフェース内 Appendableappend クラス内 PrintWritercsq_ - 文字シーケンスpublic PrintWriter append(CharSequence csq_, int start_, int end_)
append インタフェース内 Appendableappend クラス内 PrintWritercsq_ - 文字シーケンスstart_ - 開始位置end_ - 終了位置+1(長さでないことに注意)public boolean checkError()
フラッシュしエラーの有無をチェックします。
checkError クラス内 PrintWriterpublic void close()
登録ストリームをクローズします。 ただし、System.err,System.outに 関してはクローズせずフラッシュのみ行います。
close インタフェース内 Closeableclose インタフェース内 AutoCloseableclose クラス内 PrintWriterpublic void flush()
flush インタフェース内 Flushableflush クラス内 PrintWriterpublic PrintWriter format(Locale l_, String format_, Object... args_)
format クラス内 PrintWriterl_ - 地域情報format_ - フォーマットargs_ - フォーマットに対応した引数public PrintWriter format(String format_, Object... args_)
format クラス内 PrintWriterformat_ - フォーマットargs_ - フォーマットに対応した引数public void print(boolean b_)
print クラス内 PrintWriterb_ - データpublic void print(char c_)
print クラス内 PrintWriterc_ - データpublic void print(char[] s_)
print クラス内 PrintWriters_ - データpublic void print(double d_)
print クラス内 PrintWriterd_ - データpublic void print(float f_)
print クラス内 PrintWriterf_ - データpublic void print(int i_)
print クラス内 PrintWriteri_ - データpublic void print(long l_)
print クラス内 PrintWriterl_ - データpublic void print(Object o_)
print クラス内 PrintWritero_ - データpublic void print(String s_)
print クラス内 PrintWriters_ - データpublic PrintWriter printf(Locale l_, String format_, Object... args_)
printf クラス内 PrintWriterl_ - 地域情報format_ - フォーマットargs_ - フォーマットに対応した引数public PrintWriter printf(String format_, Object... args_)
printf クラス内 PrintWriterformat_ - フォーマットargs_ - フォーマットに対応した引数public void println()
println クラス内 PrintWriterpublic void println(boolean b_)
println クラス内 PrintWriterb_ - データpublic void println(char c_)
println クラス内 PrintWriterc_ - データpublic void println(char[] s_)
println クラス内 PrintWriters_ - データpublic void println(double d_)
println クラス内 PrintWriterd_ - データpublic void println(float f_)
println クラス内 PrintWriterf_ - データpublic void println(int i_)
println クラス内 PrintWriteri_ - データpublic void println(long l_)
println クラス内 PrintWriterl_ - データpublic void println(Object o_)
println クラス内 PrintWritero_ - データpublic void println(String s_)
println クラス内 PrintWriters_ - データpublic void write(char[] s_)
write クラス内 PrintWriters_ - データpublic void write(char[] s_,
int off_,
int len_)
write クラス内 PrintWriters_ - 文字の並びoff_ - 開始位置len_ - 長さ(終了位置ではないことに注意)public void write(int c_)
write クラス内 PrintWriterc_ - 文字データ(数値ではないことに注意)public void write(String s_)
write クラス内 PrintWriters_ - 文字列public void write(String s_, int off_, int len_)
write クラス内 PrintWriters_ - 文字列off_ - 開始位置len_ - 長さ(終了位置ではないことに注意)