|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.io.InputStream java.io.FileInputStream
public class FileInputStream
FileInputStream
は、ファイルシステムから入力バイトを取得します。どのファイルが有効であるかはホスト環境に依存します。
FileInputStream
は、イメージデータなどの raw バイトのストリームを読み込むときに使用します。文字のストリームを読み込むときは、FileReader
を使用してください。
File
,
FileDescriptor
,
FileOutputStream
コンストラクタの概要 | |
---|---|
FileInputStream(File file)
ファイルシステムで File オブジェクト file によって指定する実際のファイルへの接続を開くことにより、FileInputStream を作成します。 |
|
FileInputStream(FileDescriptor fdObj)
ファイルシステムの実際のファイルへの既存の接続を表すファイル記述子 fdObj を使用して、FileInputStream を作成します。 |
|
FileInputStream(String name)
ファイルシステムでパス名 name によって指定する実際のファイルへの接続を開くことにより、FileInputStream を作成します。 |
メソッドの概要 | |
---|---|
int |
available()
この入力ストリームのメソッドの次の呼び出しによって、ブロックせずにこの入力ストリームから読み込むことができる (またはスキップできる) 推定バイト数を返します。 |
void |
close()
ファイル入力ストリームを閉じ、このストリームに関連するシステムリソースを解放します。 |
protected void |
finalize()
ファイル入力ストリームへの参照が存在しなくなったときに、このストリームの close メソッドが確実に呼び出されるようにします。 |
FileChannel |
getChannel()
このファイル入力ストリームに関連付けられた、一意の FileChannel オブジェクトを返します。 |
FileDescriptor |
getFD()
この FileInputStream に使用されているファイルシステムの実際のファイルへの接続を表す FileDescriptor オブジェクトを返します。 |
int |
read()
この入力ストリームからデータのバイトを読み込みます。 |
int |
read(byte[] b)
最大 b.length バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。 |
int |
read(byte[] b,
int off,
int len)
最大 len バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。 |
long |
skip(long n)
入力ストリームから n バイト分をスキップおよび破棄します。 |
クラス java.io.InputStream から継承されたメソッド |
---|
mark, markSupported, reset |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public FileInputStream(String name) throws FileNotFoundException
name
によって指定する実際のファイルへの接続を開くことにより、FileInputStream
を作成します。このファイル接続を表すために、新しい FileDescriptor
オブジェクトが生成されます。
まず、セキュリティーマネージャーが存在する場合、checkRead
メソッドが name
引数を引数として呼び出されます。
指定されたファイルが存在しないか、普通のファイルではなくディレクトリであるか、またはなんらかの理由で開くことができない場合は、FileNotFoundException
がスローされます。
name
- システム依存のファイル名
FileNotFoundException
- ファイルが存在しないか、普通のファイルではなくディレクトリであるか、またはなんらかの理由で開くことができない場合
SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの checkRead
メソッドがファイルへの読み取りアクセスを許可しないときSecurityManager.checkRead(java.lang.String)
public FileInputStream(File file) throws FileNotFoundException
File
オブジェクト file
によって指定する実際のファイルへの接続を開くことにより、FileInputStream
を作成します。このファイル接続を表すために、新しい FileDescriptor
オブジェクトが生成されます。
まず、セキュリティーマネージャーが存在する場合、checkRead
メソッドが、file
引数によって表されるパスを引数として呼び出されます。
指定されたファイルが存在しないか、普通のファイルではなくディレクトリであるか、またはなんらかの理由で開くことができない場合は、FileNotFoundException
がスローされます。
file
- 読み込みのために開かれるファイル
FileNotFoundException
- ファイルが存在しないか、普通のファイルではなくディレクトリであるか、またはなんらかの理由で開くことができない場合
SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの checkRead
メソッドがファイルへの読み取りアクセスを許可しないときFile.getPath()
,
SecurityManager.checkRead(java.lang.String)
public FileInputStream(FileDescriptor fdObj)
fdObj
を使用して、FileInputStream
を作成します。
セキュリティーマネージャーが存在する場合は、ファイル記述子を読み込んでもよいかどうかを確認するために、ファイル記述子 fdObj
を引数として checkRead
メソッドが呼び出されます。ファイル記述子への読み込みアクセスが拒否されると、SecurityException
がスローされます。
fdObj
が null の場合は、NullPointerException
がスローされます。
fdObj
- 読み込みのために開かれるファイル記述子
SecurityException
- セキュリティーマネージャーが存在する場合に、セキュリティーマネージャーの checkRead
メソッドがファイル記述子への読み取りアクセスを許可しないときSecurityManager.checkRead(java.io.FileDescriptor)
メソッドの詳細 |
---|
public int read() throws IOException
InputStream
内の read
-1
IOException
- 入出力エラーが発生した場合public int read(byte[] b) throws IOException
b.length
バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。このメソッドは、入力の一部が利用できるようになるまでブロックします。
InputStream
内の read
b
- データの読み込み先のバッファ
-1
IOException
- 入出力エラーが発生した場合InputStream.read(byte[], int, int)
public int read(byte[] b, int off, int len) throws IOException
len
バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。len
が 0 でない場合、このメソッドは入力の一部が利用できるようになるまでブロックします。そうでない場合、バイトは読み込まれず、0
が返されます。
InputStream
内の read
b
- データの読み込み先のバッファoff
- 転送先の配列 b
内での開始オフセットlen
- 読み込まれる最大バイト数
-1
NullPointerException
- b
が null
の場合
IndexOutOfBoundsException
- off
が負の場合、len
が負の場合、または len
が b.length - off
よりも大きい場合
IOException
- 入出力エラーが発生した場合InputStream.read()
public long skip(long n) throws IOException
n
バイト分をスキップおよび破棄します。
さまざまな理由から、skip
メソッドは指定よりも少ないバイト数しかスキップしないことがあります。0
の場合もあります。n
が負の場合は、InputStream
スーパークラスの skip
メソッドは何も実行しませんが、IOException
がスローされます。スキップされた実際のバイト数が返されます。
このメソッドによってスキップされるバイト数が、バッキングファイル内の残りのバイト数より多い場合があります。この場合、例外は生成されず、スキップされたバイト数には、バッキングファイルの EOF を超えたバイト数が含まれる可能性があります。末尾を超えてスキップしたあとにストリームから読み込もうとすると、ファイルの終わりを示す -1 が返されます。
InputStream
内の skip
n
- スキップするバイト数
IOException
- n が負の場合、ストリームがシークをサポートしていない場合、または入出力エラーが発生した場合public int available() throws IOException
場合によっては、ブロックのない読み込み (またはスキップ) は、単に処理が遅いときにブロックされているように見えることがあります。たとえば、低速のネットワークを介して大容量のファイルを読み込む場合などです。
InputStream
内の available
IOException
- close
の呼び出しによって、このファイル入力ストリームが閉じられた場合、または入出力エラーが発生した場合public void close() throws IOException
このストリームにチャネルが関連付けられている場合は、そのチャネルも閉じます。
Closeable
内の close
InputStream
内の close
IOException
- 入出力エラーが発生した場合public final FileDescriptor getFD() throws IOException
FileInputStream
に使用されているファイルシステムの実際のファイルへの接続を表す FileDescriptor
オブジェクトを返します。
IOException
- 入出力エラーが発生した場合FileDescriptor
public FileChannel getChannel()
FileChannel
オブジェクトを返します。
返されたチャネルの java.nio.channels.FileChannel#position()
の初期値は、それまでにファイルから読み込まれたバイト数と等しくなります。このストリームからバイトを読み込むとチャネルの位置が増分されます。チャネルの位置が明示的に変更された場合、または読み込みよって変更された場合は、このストリームのファイル位置が変更されます。
position
protected void finalize() throws IOException
close
メソッドが確実に呼び出されるようにします。
Object
内の finalize
IOException
- 入出力エラーが発生した場合close()
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。