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, 2014, Oracle and/or its affiliates. All rights reserved.