public class PrintWriter extends Writer
PrintStream
で見つかったすべてのprintメソッドを実装します。 ただし、rawバイトを書き込むメソッドは含まれません。rawバイトに対しては、エンコードされていないバイト・ストリームをプログラムで使用してください。
PrintStream
クラスとは異なり、自動フラッシュが有効な場合は、改行文字が出力されるときではなく、println、printf、またはformatのいずれかのメソッドが呼び出されたときにのみ実行されます。 これらのメソッドは、改行文字ではなく、プラットフォームに固有の行区切りの表記を使用します。
このクラスのメソッドは、コンストラクタの一部を除き、入出力例外をスローすることはありません。 クライアントは、checkError()
を呼び出すことによって、エラーが発生したかどうかを照会できます。
コンストラクタ | 説明 |
---|---|
PrintWriter(File file) |
行の自動フラッシュは行わずに、指定されたファイルで新しいPrintWriterを作成します。
|
PrintWriter(File file, String csn) |
行の自動フラッシュは行わずに、指定されたファイルと文字セットで新しいPrintWriterを作成します。
|
PrintWriter(OutputStream out) |
行の自動フラッシュは行わずに、既存のOutputStreamから新しいPrintWriterを作成します。
|
PrintWriter(OutputStream out, boolean autoFlush) |
既存のOutputStreamから新しいPrintWriterを作成します。
|
PrintWriter(String fileName) |
行の自動フラッシュは行わずに、指定されたファイル名で新しいPrintWriterを作成します。
|
PrintWriter(String fileName, String csn) |
行の自動フラッシュは行わずに、指定されたファイル名と文字セットで新しいPrintWriterを作成します。
|
PrintWriter(Writer out) |
行の自動フラッシュは行わずに、新しいPrintWriterを作成します。
|
PrintWriter(Writer out, boolean autoFlush) |
新しいPrintWriterを作成します。
|
修飾子と型 | メソッド | 説明 |
---|---|---|
PrintWriter |
append(char c) |
指定された文字をこのライターに追加します。
|
PrintWriter |
append(CharSequence csq) |
指定された文字シーケンスをこのライターに追加します。
|
PrintWriter |
append(CharSequence csq, int start, int end) |
指定された文字シーケンスのサブシーケンスをこのライターに追加します。
|
boolean |
checkError() |
ストリームが閉じられていない場合は、そのストリームをフラッシュし、エラー状態をチェックします。
|
protected void |
clearError() |
このストリームのエラー状態を解除します。
|
void |
close() |
ストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。
|
void |
flush() |
ストリームをフラッシュします。
|
PrintWriter |
format(Locale l, String format, Object... args) |
指定された書式文字列および引数を使用して、書式付き文字列をこのライターに書き込みます。
|
PrintWriter |
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) |
文字列を出力します。
|
PrintWriter |
printf(Locale l, String format, Object... args) |
指定された書式文字列および引数を使用して、書式付き文字列をこのライターに書き込む簡易メソッドです。
|
PrintWriter |
printf(String format, Object... args) |
指定された書式文字列および引数を使用して、書式付き文字列をこのライターに書き込む簡易メソッドです。
|
void |
println() |
行の区切り文字列を書き込むことで、現在の行を終了させます。
|
void |
println(boolean x) |
boolean値を出力し、行を終了させます。
|
void |
println(char x) |
文字を出力し、行を終了させます。
|
void |
println(char[] x) |
文字の配列を出力し、行を終了させます。
|
void |
println(double x) |
倍精度浮動小数点数を出力し、行を終了させます。
|
void |
println(float x) |
浮動小数点数を出力し、行を終了させます。
|
void |
println(int x) |
整数を出力し、行を終了させます。
|
void |
println(long x) |
long型の整数値を出力し、行を終了させます。
|
void |
println(Object x) |
Objectを出力し、行を終了させます。
|
void |
println(String x) |
文字列を出力し、行を終了させます。
|
protected void |
setError() |
エラーが発生したことを示します。
|
void |
write(char[] buf) |
文字の配列を書き込みます。
|
void |
write(char[] buf, int off, int len) |
文字の配列の一部を書き込みます。
|
void |
write(int c) |
単一の文字を書き込みます。
|
void |
write(String s) |
文字列を書き込みます。
|
void |
write(String s, int off, int len) |
文字列の一部を書き込みます。
|
protected Writer out
PrintWriter
のベースとなる文字出力ストリームです。public PrintWriter(Writer out)
out
- 文字出力ストリームpublic PrintWriter(Writer out, boolean autoFlush)
out
- 文字出力ストリームautoFlush
- boolean値。trueの場合、printlnメソッド、printfメソッド、またはformatメソッドは出力バッファをフラッシュするpublic PrintWriter(OutputStream out)
out
- 出力ストリームOutputStreamWriter.OutputStreamWriter(java.io.OutputStream)
public PrintWriter(OutputStream out, boolean autoFlush)
out
- 出力ストリームautoFlush
- boolean値。trueの場合、printlnメソッド、printfメソッド、またはformatメソッドは出力バッファをフラッシュするOutputStreamWriter.OutputStreamWriter(java.io.OutputStream)
public PrintWriter(String fileName) throws FileNotFoundException
OutputStreamWriter
を作成し、これがJava仮想マシンのこのインスタンス用にデフォルト文字セットを使用して文字をエンコードします。 fileName
- このライターの宛先として使用されるファイルの名前。 ファイルが存在する場合は、サイズ0に切り詰められる。そうでない場合は、新規ファイルが作成される。 出力はファイルに書き込まれ、バッファに格納される。 FileNotFoundException
- 指定された文字列が既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、checkWrite(fileName)
がファイルへの書込みアクセスを拒否した場合public PrintWriter(String fileName, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriter
を作成し、これが指定された文字セットを使用して文字をエンコードします。 fileName
- このライターの宛先として使用されるファイルの名前。 ファイルが存在する場合は、サイズ0に切り詰められる。そうでない場合は、新規ファイルが作成される。 出力はファイルに書き込まれ、バッファに格納される。 csn
- サポートされているcharsetの名前FileNotFoundException
- 指定された文字列が既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、checkWrite(fileName)
がファイルへの書込みアクセスを拒否した場合UnsupportedEncodingException
- 指定された文字セットがサポートされていない場合public PrintWriter(File file) throws FileNotFoundException
OutputStreamWriter
を作成し、これがJava仮想マシンのこのインスタンス用にデフォルト文字セットを使用して文字をエンコードします。 file
- このライターの宛先として使用されるファイル。 ファイルが存在する場合は、サイズ0に切り詰められる。そうでない場合は、新規ファイルが作成される。 出力はファイルに書き込まれ、バッファに格納される。 FileNotFoundException
- 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、checkWrite(file.getPath())
がファイルへの書込みアクセスを拒否した場合public PrintWriter(File file, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriter
を作成し、これが指定された文字セットを使用して文字をエンコードします。 file
- このライターの宛先として使用されるファイル。 ファイルが存在する場合は、サイズ0に切り詰められる。そうでない場合は、新規ファイルが作成される。 出力はファイルに書き込まれ、バッファに格納される。 csn
- サポートされているcharsetの名前FileNotFoundException
- 指定されたファイル・オブジェクトが既存のファイルを示さない場合、書込み可能な通常ファイルおよび新規の通常ファイルがその名前で作成できない場合、またはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、checkWrite(file.getPath())
がファイルへの書込みアクセスを拒否した場合UnsupportedEncodingException
- 指定された文字セットがサポートされていない場合public void flush()
flush
、インタフェースFlushable
flush
、クラスWriter
checkError()
public void close()
close
、インタフェースCloseable
close
、インタフェースAutoCloseable
close
、クラスWriter
checkError()
public boolean checkError()
true
。protected void setError()
このメソッドを使用すると、clearError()
が呼び出されるまで、checkError()
の以降の呼出しではtrueが返されます。
protected void clearError()
このメソッドを使用すると、別の書込み操作が失敗して、setError()
が呼び出されるまで、checkError()
の以降の呼出しではfalseが返されます。
public void write(char[] buf, int off, int len)
public void write(char[] buf)
public void write(String s, int off, int len)
public void write(String s)
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 PrintWriter printf(String format, Object... args)
このメソッドをout.printf(format, args)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.format(format, args)
format
- 「書式文字列の構文」で説明した書式文字列。args
- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数がnullの場合、動作は変換に応じて異なる。 IllegalFormatException
- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。 NullPointerException
- formatがnullである場合public PrintWriter printf(Locale l, String format, Object... args)
このメソッドをout.printf(l, format, args)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.format(l, format, args)
l
- 書式設定時に適用するlocale。 lがnullの場合、ローカリゼーションは適用されない。 format
- 「書式文字列の構文」で説明した書式文字列。args
- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数がnullの場合、動作は変換に応じて異なる。 IllegalFormatException
- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。 NullPointerException
- formatがnullである場合public PrintWriter format(String format, Object... args)
このオブジェクトに対して別の書式設定メソッドが先に呼び出されていたかどうかにかかわらず、Locale.getDefault()
により返されるロケールが常に使用されます。
format
- 「書式文字列の構文」で説明した書式文字列。args
- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数がnullの場合、動作は変換に応じて異なる。 IllegalFormatException
- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、Formatterクラス仕様の「詳細」セクションを参照。 NullPointerException
- formatがnullである場合public PrintWriter format(Locale l, String format, Object... args)
l
- 書式設定時に適用するlocale。 lがnullの場合、ローカリゼーションは適用されない。 format
- 「書式文字列の構文」で説明した書式文字列。args
- 書式文字列の書式指示子により参照される引数。 書式指示子よりも引数が多い場合、余分な引数は無視される。 引数の数は変動し、ゼロの場合もある。 引数の最大数は、Java™仮想マシン仕様で定義されているJava配列の最大次元により制限される。 引数がnullの場合、動作は変換に応じて異なる。 IllegalFormatException
- 書式文字列が、不正な構文、所定の引数と互換性がない書式指示子、書式文字列に指定された不適切な引数、またはほかの不正な条件を含む場合。 考えられるすべての書式エラーの仕様については、フォーマッタ・クラス仕様の「詳細」セクションを参照。 NullPointerException
- formatがnullである場合public PrintWriter append(CharSequence csq)
このメソッドをout.append(csq)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.write(csq.toString())
文字シーケンスcsqに対するtoStringの指定に応じて、シーケンス全体が追加されないこともあります。 たとえば、文字バッファのtoStringメソッドを呼び出した場合、返されるサブシーケンスの内容はそのバッファの位置とリミットによって決まります。
append
、インタフェースAppendable
append
、クラスWriter
csq
- 追加する文字シーケンス。 csqがnullの場合は、このライターに「null」という4文字が追加される。 public PrintWriter 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
- サブシーケンスの追加元の文字シーケンス。 csqがnullの場合は、csqに「null」という4文字が含まれているかのように文字が追加される。 start
- サブシーケンスの最初の文字のインデックスend
- サブシーケンスの最後の文字のあとに続く文字のインデックスIndexOutOfBoundsException
- startまたはendが負の値の場合、startがendよりも大きい場合、あるいはendがcsq.length()よりも大きい場合public PrintWriter append(char c)
このメソッドをout.append(c)の形式で呼び出した場合、次の呼び出しとまったく同様に動作します。
out.write(c)
append
、インタフェースAppendable
append
、クラスWriter
c
- 追加する16ビット文字 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。