- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FileOutputStream
-
- すべての実装されたインタフェース:
Closeable,Flushable,AutoCloseable
public class FileOutputStream extends OutputStream
ファイル出力ストリームは、FileまたはFileDescriptorにデータを書き込むための出力ストリームです。 ファイルが使用可能であるかどうか、またはファイルを作成できるかどうかは、ベースとなるプラットフォームによって決まります。 特に、一部のプラットフォームでは、1つのファイルは同時に1つのFileOutputStream(またはその他のファイル書込みオブジェクト)だけによって書込みのために開くことができます。 このような場合、該当のファイルがすでに開かれていると、このクラスのコンストラクタは失敗します。FileOutputStreamは、イメージ・データなどのrawバイトのストリームを書き込むときに使用します。 文字のストリームを書き込むときは、FileWriterを使用してください。
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 FileOutputStream(File file)指定されたFileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。FileOutputStream(FileDescriptor fdObj)ファイル・システムの実際のファイルへの既存の接続を表す、指定されたファイル記述子に書き込むためのファイル出力ストリームを作成します。FileOutputStream(File file, boolean append)指定されたFileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。FileOutputStream(String name)指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。FileOutputStream(String name, boolean append)指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 voidclose()ファイル出力ストリームを閉じ、このストリームに関連するすべてのシステム・リソースを解放します。protected voidfinalize()非推奨。finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。finalizeメソッドをオーバーライドする場合、実装では、super.finalize()がObject.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。FileChannelgetChannel()このファイル出力ストリームに関連付けられている一意のFileChannelオブジェクトを返します。FileDescriptorgetFD()ストリームに関連したファイル記述子を返します。voidwrite(byte[] b)指定されたバイト配列のb.lengthバイトをこのファイル出力ストリームに書き込みます。voidwrite(byte[] b, int off, int len)指定されたバイト配列のオフセット位置offから始まるlenバイトをこのファイル出力ストリームに書き込みます。voidwrite(int b)指定されたバイトをこのファイル出力ストリームに書き込みます。-
クラス java.lang.Objectから継承されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
クラス java.io.OutputStreamから継承されたメソッド
flush
-
-
-
-
コンストラクタの詳細
-
FileOutputStream
public FileOutputStream(String name) throws FileNotFoundException
指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。まず、セキュリティ・マネージャが存在する場合は、
checkWriteメソッドがnameをその引数に指定して呼び出されます。ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、
FileNotFoundExceptionがスローされます。- 実装要件:
- このコンストラクタをパラメータ
nameで呼び出すことは、new FileOutputStream(name, false)を呼び出すことと同じです。 - パラメータ:
name- システムに依存するファイル名- 例外:
FileNotFoundException- ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException- セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。- 関連項目:
SecurityManager.checkWrite(java.lang.String)
-
FileOutputStream
public FileOutputStream(String name, boolean append) throws FileNotFoundException
指定された名前のファイルに書き込むためのファイル出力ストリームを作成します。 2番目の引数がtrueの場合、バイトはファイルの先頭ではなく最後に書き込まれます。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。まず、セキュリティ・マネージャが存在する場合は、
checkWriteメソッドがnameをその引数に指定して呼び出されます。ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、
FileNotFoundExceptionがスローされます。- パラメータ:
name- システム依存のファイル名append-trueの場合、バイトはファイルの先頭ではなく最後に書き込まれる- 例外:
FileNotFoundException- ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合。SecurityException- セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。- 導入されたバージョン:
- 1.1
- 関連項目:
SecurityManager.checkWrite(java.lang.String)
-
FileOutputStream
public FileOutputStream(File file) throws FileNotFoundException
指定されたFileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。まず、セキュリティ・マネージャが存在する場合、
checkWriteメソッドが、file引数で表されるパスをその引数に指定して呼び出されます。ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、
FileNotFoundExceptionがスローされます。- パラメータ:
file- 書込み用に開かれるファイル。- 例外:
FileNotFoundException- ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException- セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。- 関連項目:
File.getPath()、SecurityException,SecurityManager.checkWrite(java.lang.String)
-
FileOutputStream
public FileOutputStream(File file, boolean append) throws FileNotFoundException
指定されたFileオブジェクトによって表されるファイルに書き込むためのファイル出力ストリームを作成します。 2番目の引数がtrueの場合、バイトはファイルの先頭ではなく最後に書き込まれます。 このファイル接続を表すために、新しいFileDescriptorオブジェクトが作成されます。まず、セキュリティ・マネージャが存在する場合、
checkWriteメソッドが、file引数で表されるパスをその引数に指定して呼び出されます。ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合は、
FileNotFoundExceptionがスローされます。- パラメータ:
file- 書込み用に開かれるファイル。append-trueの場合、バイトはファイルの先頭ではなく最後に書き込まれる- 例外:
FileNotFoundException- ファイルが存在するが通常ファイルではなくディレクトリである場合、存在せず作成もできない場合、またはなんらかの理由で開くことができない場合SecurityException- セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイルへの書込みアクセスを拒否した場合。- 導入されたバージョン:
- 1.4
- 関連項目:
File.getPath()、SecurityException,SecurityManager.checkWrite(java.lang.String)
-
FileOutputStream
public FileOutputStream(FileDescriptor fdObj)
ファイル・システムの実際のファイルへの既存の接続を表す、指定されたファイル記述子に書き込むためのファイル出力ストリームを作成します。まず、セキュリティ・マネージャが存在する場合、
checkWriteメソッドが、ファイル記述子fdObj引数を引数として呼び出されます。fdObjがnullの場合、NullPointerExceptionがスローされます。fdObjがinvalidの場合、このコンストラクタは例外をスローしません。 ただし、結果となるストリームに対してそのストリームへの入出力を試みるメソッドが呼び出された場合は、IOExceptionがスローされます。- パラメータ:
fdObj- 書込みのために開かれるファイル記述子- 例外:
SecurityException- セキュリティ・マネージャが存在し、そのcheckWriteメソッドがファイル記述子への書込みアクセスを拒否した場合- 関連項目:
SecurityManager.checkWrite(java.io.FileDescriptor)
-
-
メソッドの詳細
-
write
public void write(int b) throws IOException指定されたバイトをこのファイル出力ストリームに書き込みます。OutputStreamのwriteメソッドを実装します。- 定義:
write、クラス:OutputStream- パラメータ:
b- 書き込まれるバイト。- 例外:
IOException- 入出力エラーが発生した場合。
-
write
public void write(byte[] b) throws IOException指定されたバイト配列のb.lengthバイトをこのファイル出力ストリームに書き込みます。- オーバーライド:
write、クラス:OutputStream- パラメータ:
b- データ。- 例外:
IOException- 入出力エラーが発生した場合。- 関連項目:
OutputStream.write(byte[], int, int)
-
write
public void write(byte[] b, int off, int len) throws IOException指定されたバイト配列のオフセット位置offから始まるlenバイトをこのファイル出力ストリームに書き込みます。- オーバーライド:
write、クラス:OutputStream- パラメータ:
b- データ。off- データの開始オフセット。len- 書き込むバイト数。- 例外:
IOException- 入出力エラーが発生した場合。
-
close
public void close() throws IOExceptionファイル出力ストリームを閉じ、このストリームに関連するすべてのシステム・リソースを解放します。 以降は、このファイル出力ストリームをバイトの書込みに使用することはできません。このストリームにチャネルが関連付けられている場合は、そのチャネルも閉じます。
- 定義:
close、インタフェース:AutoCloseable- 定義:
close、インタフェース:Closeable- オーバーライド:
close、クラス:OutputStream- 例外:
IOException- 入出力エラーが発生した場合。
-
getFD
public final FileDescriptor getFD() throws IOException
ストリームに関連したファイル記述子を返します。- 戻り値:
- この
FileOutputStreamオブジェクトによって使用されているファイル・システムのファイルへの接続を表すFileDescriptorオブジェクト。 - 例外:
IOException- 入出力エラーが発生した場合。- 関連項目:
FileDescriptor
-
getChannel
public FileChannel getChannel()
このファイル出力ストリームに関連付けられている一意のFileChannelオブジェクトを返します。返されるチャネルの初期
positionは、それまでにファイルに書き込まれたバイト数と等しくなります。このストリームが追加モードの場合は、ファイルのサイズと等しくなります。 このストリームにバイトを書き込むたびにチャネルの位置が増分されます。 チャネルの位置が明示的に変更された場合、または書き込みよって変更された場合は、このストリームのファイル位置が変更されます。- 戻り値:
- このファイル出力ストリームに関連付けられているファイル・チャネル
- 導入されたバージョン:
- 1.4
-
finalize
@Deprecated(since="9") protected void finalize() throws IOException
非推奨。finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。finalizeメソッドをオーバーライドする場合、実装では、super.finalize()がObject.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。ファイルへの接続をクリーンアップし、このストリームへの参照がなくなったときにこのファイル出力ストリームのcloseメソッドが呼び出されるようにします。- オーバーライド:
finalize、クラス:Object- 例外:
IOException- 入出力エラーが発生した場合。- 関連項目:
FileInputStream.close()
-
-