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)
指定されたバイトをこのファイル出力ストリームに書き込みます。
|
flush
public 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
、クラス: OutputStream
b
- 書き込まれるバイト。IOException
- 入出力エラーが発生した場合。public void write(byte[] b) throws IOException
b.length
バイトをこのファイル出力ストリームに書き込みます。write
、クラス: OutputStream
b
- データ。IOException
- 入出力エラーが発生した場合。OutputStream.write(byte[], int, int)
public void write(byte[] b, int off, int len) throws IOException
off
から始まる len
バイトをこのファイル出力ストリームに書き込みます。write
、クラス: OutputStream
b
- データ。off
- データの開始オフセット。len
- 書き込むバイト数。IOException
- 入出力エラーが発生した場合。public void close() throws IOException
このストリームにチャネルが関連付けられている場合は、そのチャネルも閉じます。
close
、インタフェース: Closeable
close
、インタフェース: AutoCloseable
close
、クラス: OutputStream
IOException
- 入出力エラーが発生した場合。public final FileDescriptor getFD() throws IOException
FileOutputStream
オブジェクトによって使用されているファイルシステムのファイルへの接続を表す FileDescriptor
オブジェクト。IOException
- 入出力エラーが発生した場合。FileDescriptor
public FileChannel getChannel()
FileChannel
オブジェクトを返します。
返されたチャネルの position
の初期値は、それまでにファイルに書き込まれたバイト数に設定されます。ただし、このストリームが追加モードの場合は、ファイルの大きさに設定されます。このストリームにバイトを書き込むたびにチャネルの位置が増分されます。チャネルの位置が明示的に変更された場合、または書き込みよって変更された場合は、このストリームのファイル位置が変更されます。
protected void finalize() throws IOException
close
メソッドが呼び出されるようにします。finalize
、クラス: Object
IOException
- 入出力エラーが発生した場合。FileInputStream.close()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.