public class FileOutputStream extends OutputStream
FileまたはFileDescriptorにデータを書き込むための出力ストリームです。 ファイルが使用可能であるかどうか、またはファイルを作成できるかどうかは、ベースとなるプラットフォームによって決まります。 特に、一部のプラットフォームでは、1つのファイルは同時に1つのFileOutputStream (またはその他のファイル書込みオブジェクト)だけによって書込みのために開くことができます。 このような場合、該当のファイルがすでに開かれていると、このクラスのコンストラクタは失敗します。
FileOutputStreamは、イメージ・データなどのrawバイトのストリームを書き込むときに使用します。 文字のストリームを書き込むときは、FileWriterを使用してください。
File、FileDescriptor、FileInputStream、Files.newOutputStream(java.nio.file.Path, java.nio.file.OpenOption...)| コンストラクタ | 説明 |
|---|---|
FileOutputStream(File file) |
指定された
Fileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 |
FileOutputStream(File file, boolean append) |
指定された
Fileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 |
FileOutputStream(FileDescriptor fdObj) |
ファイル・システムの実際のファイルへの既存の接続を表す、指定されたファイル記述子に書き込むためのファイル出力ストリームを作成します。
|
FileOutputStream(String name) |
指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。
|
FileOutputStream(String name, boolean append) |
指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。
|
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
void |
close() |
ファイル出力ストリームを閉じ、このストリームに関連するすべてのシステム・リソースを解放します。
|
protected void |
finalize() |
ファイルへの接続をクリーンアップし、このストリームへの参照がなくなったときにこのファイル出力ストリームの
closeメソッドが呼び出されるようにします。 |
FileChannel |
getChannel() |
このファイル出力ストリームに関連付けられている一意の
FileChannelオブジェクトを返します。 |
FileDescriptor |
getFD() |
ストリームに関連したファイル記述子を返します。
|
void |
write(byte[] b) |
指定されたバイト配列の
b.lengthバイトをこのファイル出力ストリームに書き込みます。 |
void |
write(byte[] b, int off, int len) |
指定されたバイト配列のオフセット位置
offから始まるlenバイトをこのファイル出力ストリームに書き込みます。 |
void |
write(int b) |
指定されたバイトをこのファイル出力ストリームに書き込みます。
|
flushpublic FileOutputStream(String name) throws FileNotFoundException
FileDescriptorオブジェクトが作成されます。
まず、セキュリティ・マネージャが存在する場合は、checkWriteメソッドがnameをその引数に指定して呼び出されます。
ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、FileNotFoundExceptionがスローされます。
name - システムに依存するファイル名FileNotFoundException - ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException - セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。SecurityManager.checkWrite(java.lang.String)public FileOutputStream(String name, boolean append) throws FileNotFoundException
trueの場合、バイトはファイルの先頭ではなく最後に書き込まれます。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。
まず、セキュリティ・マネージャが存在する場合は、checkWriteメソッドがnameをその引数に指定して呼び出されます。
ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、FileNotFoundExceptionがスローされます。
name - システム依存のファイル名append - trueの場合、バイトはファイルの先頭ではなく最後に書き込まれるFileNotFoundException - ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合。SecurityException - セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。SecurityManager.checkWrite(java.lang.String)public FileOutputStream(File file) throws FileNotFoundException
Fileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。
まず、セキュリティ・マネージャが存在する場合、checkWriteメソッドが、file引数で表されるパスをその引数に指定して呼び出されます。
ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、FileNotFoundExceptionがスローされます。
file - 書込み用に開かれるファイル。FileNotFoundException - ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException - セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。File.getPath()、SecurityException, SecurityManager.checkWrite(java.lang.String)public FileOutputStream(File file, boolean append) throws FileNotFoundException
Fileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 2番目の引数がtrueの場合、バイトはファイルの先頭ではなく最後に書き込まれます。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。
まず、セキュリティ・マネージャが存在する場合、checkWriteメソッドが、file引数で表されるパスをその引数に指定して呼び出されます。
ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、FileNotFoundExceptionがスローされます。
file - 書込み用に開かれるファイル。append - trueの場合、バイトはファイルの先頭ではなく最後に書き込まれるFileNotFoundException - ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException - セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。File.getPath()、SecurityException, SecurityManager.checkWrite(java.lang.String)public FileOutputStream(FileDescriptor fdObj)
まず、セキュリティ・マネージャが存在する場合、checkWriteメソッドが、ファイル記述子fdObj引数を引数として呼び出されます。
fdObjがnullの場合、NullPointerExceptionがスローされます。
fdObjがinvalidの場合、このコンストラクタは例外をスローしません。 ただし、結果となるストリームに対してそのストリームへの入出力を試みるメソッドが呼び出された場合は、IOExceptionがスローされます。
fdObj - 書込みのために開かれるファイル記述子SecurityException - セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイル記述子への書込みアクセスを拒否した場合SecurityManager.checkWrite(java.io.FileDescriptor)public void write(int b)
throws IOException
OutputStreamのwriteメソッドを実装します。 write、クラスOutputStreamb - 書き込まれるバイト。IOException - 入出力エラーが発生した場合。public void write(byte[] b)
throws IOException
b.lengthバイトをこのファイル出力ストリームに書き込みます。write、クラスOutputStreamb - データ。IOException - 入出力エラーが発生した場合。OutputStream.write(byte[], int, int)public void write(byte[] b,
int off,
int len)
throws IOException
offから始まるlenバイトをこのファイル出力ストリームに書き込みます。write、クラスOutputStreamb - データ。off - データの開始オフセット。len - 書き込むバイト数。IOException - 入出力エラーが発生した場合。public void close()
throws IOException
このストリームにチャネルが関連付けられている場合は、そのチャネルも閉じます。
close、インタフェースCloseableclose、インタフェースAutoCloseableclose、クラスOutputStreamIOException - 入出力エラーが発生した場合。public final FileDescriptor getFD() throws IOException
FileOutputStreamオブジェクトによって使用されているファイル・システムのファイルへの接続を表すFileDescriptorオブジェクト。IOException - 入出力エラーが発生した場合。FileDescriptorpublic FileChannel getChannel()
FileChannelオブジェクトを返します。
返されるチャネルの初期positionは、それまでにファイルに書き込まれたバイト数と等しくなります。このストリームが追加モードの場合は、ファイルのサイズと等しくなります。 このストリームにバイトを書き込むたびにチャネルの位置が増分されます。 チャネルの位置が明示的に変更された場合、または書き込みよって変更された場合は、このストリームのファイル位置が変更されます。
protected void finalize()
throws IOException
closeメソッドが呼び出されるようにします。finalize、クラスObjectIOException - 入出力エラーが発生した場合。FileInputStream.close() バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。