public class PrintStream extends FilterOutputStream implements Appendable, Closeable
PrintStreamは、ほかの出力ストリームに機能、具体的には、さまざまなデータ値の表現を簡易的に出力する機能を追加します。同様に、ほかの2つの機能も提供されています。PrintStreamはほかの出力ストリームとは違って、IOExceptionをスローすることはありません。例外的な状況では、単に内部フラグが設定されるだけです。このフラグの状態は、checkErrorメソッドで調べることができます。必要に応じて、PrintStreamを自動的にフラッシュするように作成できます。つまり、バイト配列が書き込まれたか、printlnメソッドの1つが呼び出されたか、または改行文字またはバイト('\n')が書き込まれたあとに、flushメソッドが自動的に呼び出されます。
PrintStreamが出力したすべての文字は、プラットフォームのデフォルトの文字エンコーディングを使ってバイトに変換されます。クラスは、バイトではなく文字を書き込むことが必要な状況で使用されます。PrintWriter
out| コンストラクタと説明 |
|---|
PrintStream(File file)
行の自動フラッシュは行わずに、指定のファイルで新しい出力ストリームを作成します。
|
PrintStream(File file, String csn)
行の自動フラッシュは行わずに、指定のファイルと文字セットで新しい出力ストリームを作成します。
|
PrintStream(OutputStream out)
新しいPrintStreamを作成します。
|
PrintStream(OutputStream out, boolean autoFlush)
新しいPrintStreamを作成します。
|
PrintStream(OutputStream out, boolean autoFlush, String encoding)
新しいPrintStreamを作成します。
|
PrintStream(String fileName)
行の自動フラッシュは行わずに、指定の名前で新しい出力ストリームを作成します。
|
PrintStream(String fileName, String csn)
行の自動フラッシュは行わずに、指定の名前と文字セットで新しい出力ストリームを作成します。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
PrintStream |
append(char c)
この出力ストリームに指定された文字を追加します。
|
PrintStream |
append(CharSequence csq)
この出力ストリームに指定された文字シーケンスを追加します。
|
PrintStream |
append(CharSequence csq, int start, int end)
指定された文字シーケンスのサブシーケンスをこの出力ストリームに追加します。
|
boolean |
checkError()
ストリームをフラッシュし、そのエラー状況を確認します。
|
protected void |
clearError()
このストリームの内部エラー状態を解除します。
|
void |
close()
ストリームを閉じます。
|
void |
flush()
ストリームをフラッシュします。
|
PrintStream |
format(Locale l, String format, Object... args)
指定された書式文字列および引数を使用して、書式付き文字列をこの出力ストリームの宛先に書き込みます。
|
PrintStream |
format(String format, Object... args)
指定された書式文字列および引数を使用して、書式付き文字列をこの出力ストリームの宛先に書き込みます。
|
void |
print(boolean b)
boolean型の値を出力します。
|
void |
print(char c)
文字を出力します。
|
void |
print(char[] s)
文字の配列を出力します。
|
void |
print(double d)
倍精度の浮動小数点数を出力します。
|
void |
print(float f)
浮動小数点数を出力します。
|
void |
print(int i)
整数を出力します。
|
void |
print(long l)
long整数を出力します。
|
void |
print(Object obj)
オブジェクトを出力します。
|
void |
print(String s)
文字列を出力します。
|
PrintStream |
printf(Locale l, String format, Object... args)
書式付き文字列を、指定された書式文字列と引数を使用し、この出力ストリームに書き込む便利な方法です。
|
PrintStream |
printf(String format, Object... args)
書式付き文字列を、指定された書式文字列と引数を使用し、この出力ストリームに書き込む便利な方法です。
|
void |
println()
行の区切り文字列を書き込むことで、現在の行を終了させます。
|
void |
println(boolean x)
boolean値を出力して、行を終了します。
|
void |
println(char x)
文字を出力して、行を終了します。
|
void |
println(char[] x)
文字の配列を出力して、行を終了します。
|
void |
println(double x)
doubleを出力して、行を終了します。
|
void |
println(float x)
floatを出力して、行を終了します。
|
void |
println(int x)
整数を出力して、行を終了します。
|
void |
println(long x)
longを出力して、行を終了します。
|
void |
println(Object x)
Objectを出力して、行を終了します。
|
void |
println(String x)
Stringを出力して、行を終了します。
|
protected void |
setError()
ストリームのエラー状態を
trueに設定します。 |
void |
write(byte[] buf, int off, int len)
指定されたバイト配列のオフセット位置
offから始まるlenバイトをこのストリームに書き込みます。 |
void |
write(int b)
指定されたバイトを、このストリームに書き込みます。
|
writepublic PrintStream(OutputStream out)
out - 値とオブジェクトが出力される出力ストリームPrintWriter.PrintWriter(java.io.OutputStream)public PrintStream(OutputStream out, boolean autoFlush)
out - 値とオブジェクトが出力される出力ストリームautoFlush - boolean値。trueの場合、バイト配列が書き込まれたとき、printlnメソッドの1つが呼び出されたとき、あるいは改行文字またはバイト('\n')が書き込まれたときに必ず出力バッファがフラッシュされるPrintWriter.PrintWriter(java.io.OutputStream, boolean)public PrintStream(OutputStream out, boolean autoFlush, String encoding) throws UnsupportedEncodingException
out - 値とオブジェクトが出力される出力ストリームautoFlush - boolean値。trueの場合、バイト配列が書き込まれたとき、printlnメソッドの1つが呼び出されたとき、あるいは改行文字またはバイト('\n')が書き込まれたときに必ず出力バッファがフラッシュされるencoding - サポートされる文字エンコーディングの名前UnsupportedEncodingException - 指定されたエンコーディングがサポートされていない場合public PrintStream(String fileName) throws FileNotFoundException
OutputStreamWriterを作成し、これがJava仮想マシンのこのインスタンス用にデフォルト文字セットを使用して文字をエンコードします。fileName - この出力ストリームの宛先として使用するファイルの名前。ファイルが存在する場合、サイズ0に切り詰められる。ファイルがなければ新しいファイルが作成される。出力はファイルに書き込まれ、バッファに格納される。FileNotFoundException - 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException - セキュリティ・マネージャが存在し、checkWrite(fileName)がファイルへの書込みアクセスを拒否した場合public PrintStream(String fileName, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriterを作成し、これが指定された文字セットを使用して文字をエンコードします。fileName - この出力ストリームの宛先として使用するファイルの名前。ファイルが存在する場合、サイズ0に切り詰められる。ファイルがなければ新しいファイルが作成される。出力はファイルに書き込まれ、バッファに格納される。csn - サポートされているcharsetの名前FileNotFoundException - 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException - セキュリティ・マネージャが存在し、checkWrite(fileName)がファイルへの書込みアクセスを拒否した場合UnsupportedEncodingException - 指定された文字セットがサポートされていない場合public PrintStream(File file) throws FileNotFoundException
OutputStreamWriterを作成し、これがJava仮想マシンのこのインスタンス用にデフォルト文字セットを使用して文字をエンコードします。file - この出力ストリームの宛先として使用するファイル。ファイルが存在する場合、サイズ0に切り詰められる。ファイルがなければ新しいファイルが作成される。出力はファイルに書き込まれ、バッファに格納される。FileNotFoundException - 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException - セキュリティ・マネージャが存在し、checkWrite(file.getPath())がファイルへの書込みアクセスを拒否した場合public PrintStream(File file, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriterを作成し、これが指定された文字セットを使用して文字をエンコードします。file - この出力ストリームの宛先として使用するファイル。ファイルが存在する場合、サイズ0に切り詰められる。ファイルがなければ新しいファイルが作成される。出力はファイルに書き込まれ、バッファに格納される。csn - サポートされているcharsetの名前FileNotFoundException - 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException - セキュリティ・マネージャが存在し、checkWrite(file.getPath())がファイルへの書込みアクセスを拒否した場合UnsupportedEncodingException - 指定された文字セットがサポートされていない場合public void flush()
flush、インタフェース: Flushableflush、クラス: FilterOutputStreamOutputStream.flush()public void close()
close、インタフェース: Closeableclose、インタフェース: AutoCloseableclose、クラス: FilterOutputStreamOutputStream.close()public boolean checkError()
InterruptedIOExceptionではなくIOExceptionをスローした場合、およびsetErrorメソッドが呼び出された場合に、内部エラー状態はtrueに設定されます。ベースとなる出力ストリームのオペレーションがInterruptedIOExceptionをスローすると、PrintStreamが次の操作またはそれに相当する操作によって例外を変換して割り込みに戻します。
Thread.currentThread().interrupt();
または同等のもの。InterruptedIOException以外のIOExceptionが発生した場合、またはsetErrorメソッドが呼び出された場合はtrueprotected void setError()
trueに設定します。
このメソッドを使用すると、clearError()が呼び出されるまで、checkError()の以降の呼出しではtrueが返されます。
protected void clearError()
このメソッドを使用すると、別の書込み操作が失敗して、setError()が呼び出されるまで、checkError()の以降の呼出しではfalseが返されます。
public void write(int b)
flushメソッドが呼び出されます。
バイトは、指定されたまま書き込まれることに注意してください。プラットフォームのデフォルトの文字エンコーディングに従って変換された文字を書き込むには、print(char)またはprintln(char)メソッドを使用します。
write、クラス: FilterOutputStreamb - 書き込まれるバイトprint(char), println(char)public void write(byte[] buf,
int off,
int len)
offから始まるlenバイトをこのストリームに書き込みます。自動フラッシュが有効な場合は、flushメソッドが呼び出されます。
バイトは、指定されたまま書き込まれます。プラットフォームのデフォルトの文字エンコーディングに従って変換された文字列を書き込むには、print(char)メソッドまたはprintln(char)メソッドを使用します。
write、クラス: FilterOutputStreambuf - バイト配列off - バイトの取込み開始オフセットlen - 書き込むバイト数FilterOutputStream.write(int)public void print(boolean b)
String.valueOf(boolean)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。b - 出力されるboolean値public void print(char c)
write(int)メソッドとまったく同じ方法で書き込まれます。c - 出力されるchar値public void print(int i)
String.valueOf(int)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。i - 出力されるint値Integer.toString(int)public void print(long l)
String.valueOf(long)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。l - 出力されるlong値Long.toString(long)public void print(float f)
String.valueOf(float)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。f - 出力されるfloat値Float.toString(float)public void print(double d)
String.valueOf(double)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。d - 出力されるdouble値Double.toString(double)public void print(char[] s)
write(int)メソッドとまったく同じ方法で書き込まれます。s - 出力されるcharの配列NullPointerException - sがnullである場合public void print(String s)
nullの場合は、文字列"null"が出力されます。それ以外の場合、文字列の文字はプラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。s - 出力されるString値public void print(Object obj)
String.valueOf(Object)により作成された文字列は、プラットフォームのデフォルトの文字エンコーディングに従ってバイトに変換され、これらのバイトはwrite(int)メソッドとまったく同じ方法で書き込まれます。obj - 出力されるObject値Object.toString()public void println()
line.separatorで定義され、必ずしも単一の改行文字('\n')であるとは限りません。public void println(boolean x)
print(boolean)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるboolean値public void println(char x)
print(char)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるchar値。public void println(int x)
print(int)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるint値。public void println(long x)
print(long)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるlong値。public void println(float x)
print(float)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるfloat値。public void println(double x)
print(double)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるdouble値。public void println(char[] x)
print(char[])を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるcharの配列。public void println(String x)
print(String)を呼び出してからprintln()を呼び出すのと同じように動作します。x - 出力されるString値。public void println(Object x)
print(String)、そしてprintln()を呼び出すのと同じように動作します。x - 出力されるObject値。public PrintStream printf(String format, Object... args)
このメソッドをout.printf(format, args)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.format(format, args) format - 「書式文字列の構文」で説明した書式文字列args - 書式文字列の書式指示子により参照される引数。書式指示子よりも引数が多い場合、余分な引数は無視される。引数の数は変動し、ゼロの場合もある。引数の最大数は、Java(tm)仮想マシン仕様で定義されているJava配列の最大次元により制限される。引数がnullの場合、動作は変換に応じて異なる。IllegalFormatException - 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。NullPointerException - formatがnullである場合public PrintStream printf(Locale l, String format, Object... args)
このメソッドをout.printf(l, format, args)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.format(l, format, args) l - 書式設定時に適用するlocale。lがnullの場合、ローカリゼーションは適用されない。format - 「書式文字列の構文」で説明した書式文字列args - 書式文字列の書式指示子により参照される引数。書式指示子よりも引数が多い場合、余分な引数は無視される。引数の数は変動し、ゼロの場合もある。引数の最大数は、Java(tm)仮想マシン仕様で定義されているJava配列の最大次元により制限される。引数がnullの場合、動作は変換に応じて異なる。IllegalFormatException - 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。NullPointerException - formatがnullである場合public PrintStream format(String format, Object... args)
このオブジェクトに対して別の書式設定メソッドが先に呼び出されていたかどうかにかかわらず、Locale.getDefault()により返されるロケールが常に使用されます。
format - 「書式文字列の構文」で説明した書式文字列args - 書式文字列の書式指示子により参照される引数。書式指示子よりも引数が多い場合、余分な引数は無視される。引数の数は変動し、ゼロの場合もある。引数の最大数は、Java(tm)仮想マシン仕様で定義されているJava配列の最大次元により制限される。引数がnullの場合、動作は変換に応じて異なる。IllegalFormatException - 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。NullPointerException - formatがnullである場合public PrintStream format(Locale l, String format, Object... args)
l - 書式設定時に適用するlocale。lがnullの場合、ローカリゼーションは適用されない。format - 「書式文字列の構文」で説明した書式文字列args - 書式文字列の書式指示子により参照される引数。書式指示子よりも引数が多い場合、余分な引数は無視される。引数の数は変動し、ゼロの場合もある。引数の最大数は、Java(tm)仮想マシン仕様で定義されているJava配列の最大次元により制限される。引数がnullの場合、動作は変換に応じて異なる。IllegalFormatException - 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。NullPointerException - formatがnullである場合public PrintStream append(CharSequence csq)
このメソッドをout.append(csq)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.print(csq.toString())
文字シーケンスcsqに対するtoStringの指定に応じて、シーケンス全体が追加されないこともあります。たとえば、文字バッファのtoStringメソッドを呼び出した場合、返されるサブシーケンスの内容はそのバッファの位置とリミットによって決まります。
append、インタフェース: Appendablecsq - 追加する文字シーケンス。csqがnullの場合は、この出力ストリームに「null」という4文字が追加される。public PrintStream append(CharSequence csq, int start, int end)
csqがnullでないときに、このメソッドをout.append(csq, start, end)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.print(csq.subSequence(start, end).toString()) append、インタフェース: Appendablecsq - サブシーケンスの追加元の文字シーケンス。csqがnullの場合は、csqに「null」という4文字が含まれているかのように文字が追加される。start - サブシーケンスの最初の文字のインデックスend - サブシーケンスの最後の文字のあとに続く文字のインデックスIndexOutOfBoundsException - startまたはendが負の値の場合、startがendよりも大きい場合、あるいはendがcsq.length()よりも大きい場合public PrintStream append(char c)
このメソッドをout.append(c)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.print(c) append、インタフェース: Appendablec - 追加する16ビット文字 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.