public abstract class hiAbstractPrintWriter extends PrintWriter
独自のPrintWriterを作成するためのクラスです。
派生クラスでoutput(String)メソッドを記述することにより、
独自のPrintWriterを作成できます。
例えば次のクラスは、与えられたStringBuilderに文字列を構築していく
PrintWriterとなります。
import otsu.hiNote.hiAbstractPrintWriter;
public class SBwriter extends hiAbstractPrintWriter{
StringBuilder sb;
public SBwriter(StringBuilder sb_){ sb=sb_; }
protected void output(String text_){ sb.append(text_); }
}
// 利用者側の記述例
StringBuilder sb = new StringBuilder();
SBwriter sbw= new SBwriter(sb);
sbw.println("適当な文字列");
sbw.printf("適当な値 %3d %f\n",100,4.5f);
String text=sb.toString();
スレッドセーフです。フラッシュ前の文字列はスレッドごとに管理されます。 フラッシュしないままためられる文字数には制限があり、 setBufferLen()/getBufferLen()で設定/取得できます。デフォルトは50000文字です。
| コンストラクタと説明 |
|---|
hiAbstractPrintWriter() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
PrintWriter |
append(char c_)
/**
文字を追加する.
|
PrintWriter |
append(CharSequence csq_)
文字シーケンスを追加する.
|
PrintWriter |
append(CharSequence csq_,
int start_,
int end_)
文字シーケンスを追加する.
|
void |
cancelMode(int flag_)
モード変更(hiU.AUTO_FLUSHのみ).
|
boolean |
checkError()
登録ストリームのエラーチェックを呼ぶ.
|
void |
close()
クローズする
|
void |
flush_for_newLine()
最後の改行までフラッシュする
|
void |
flush()
フラッシュする
|
PrintWriter |
format(Locale l_,
String format_,
Object... args_)
指定フォーマット出力を行う
|
PrintWriter |
format(String format_,
Object... args_)
指定フォーマット出力を行う
|
int |
getBufferLen()
フラッシュしないまま保持できる文字数取得.
|
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 |
setBufferLen(int len_)
フラッシュしないまま保持できる文字数設定.
|
void |
setMode(int flag_)
モード変更(hiU.AUTO_FLUSHのみ).
|
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 void setMode(int flag_)
動作モードを変更します。
現版ではhiU.AUTO_FLUSHを指定してオートフラッシュモードにすることのみできます。
printer.setMode(hiU.AUTO_FLUSH);
オートフラッシュモードでは改行が来るたびにflushされます。
オートフラッシュモードでない場合は、flush()またはprintln()でのみ
フラッシュされます。
flag_ - hiU.AUTO_FLUSHのみ有効public void cancelMode(int flag_)
動作モードを変更します。
現版ではhiU.AUTO_FLUSHを指定してオートフラッシュモードをキャンセルすることのみできます。
printer.cancelMode(hiU.AUTO_FLUSH);
flag_ - hiU.AUTO_FLUSHのみ有効public void setBufferLen(int len_)
len_ - 設定する長さpublic int getBufferLen()
public void flush_for_newLine()
public void flush()
flush インタフェース内 Flushableflush クラス内 PrintWriterpublic void close()
close インタフェース内 Closeableclose インタフェース内 AutoCloseableclose クラス内 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 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_ - 長さ(終了位置ではないことに注意)