Spec-Zone.ru › OpenJDK 8

Класс FileInputStream

  • java.lang.Object
    • java.io.InputStream
      • java.io.FileInputStream
Все реализованные интерфейсы:
Closeable, AutoCloseable

public class FileInputStream
extends InputStream

Класс FileInputStream получает входные байты из файла в файловой системе. Доступные файлы зависят от среды хоста.

FileInputStream предназначен для чтения потоков сырых байтов, таких как данные изображения. Для чтения потоков символов используйте FileReader.

С момента:
JDK1.0
См. также:
File, FileDescriptor, FileOutputStream, Files.newInputStream(java.nio.file.Path, java.nio.file.OpenOption...)

Конструкторы

Конструктор и описание
FileInputStream(File file)

Создаёт FileInputStream, открывая соединение с фактическим файлом, названным объектом File file в файловой системе.

FileInputStream(FileDescriptor fdObj)

Создаёт FileInputStream, используя дескриптор файла fdObj, который представляет существующее соединение с фактическим файлом в файловой системе.

FileInputStream(String name)

Создаёт FileInputStream, открывая соединение с фактическим файлом, названным именем пути name в файловой системе.

Методы

Модификатор и тип Метод и описание
int available()

Возвращает оценку количества оставшихся байтов, которые можно прочитать (или пропустить) из этого потока ввода без блокировки до следующего вызова метода для этого потока ввода.

void close()

Закрывает этот поток ввода файла и высвобождает все системные ресурсы, связанные с потоком.

protected void finalize()

Обеспечивает, что метод close этого потока ввода файла вызывается, когда на него больше нет ссылок.

FileChannel getChannel()

Возвращает уникальный объект FileChannel, связанный с этим потоком ввода файла.

FileDescriptor getFD()

Возвращает объект FileDescriptor, представляющий соединение с фактическим файлом в файловой системе, используемой этим FileInputStream.

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

Конструкторы

FileInputStream

public FileInputStream(String name)
                throws FileNotFoundException

Создаёт FileInputStream путём открытия соединения с фактическим файлом, файлом с именем, заданным именем пути name в файловой системе. Новый объект FileDescriptor создаётся для представления этого соединения с файлом.

Вначале, если существует менеджер безопасности, вызывается его метод checkRead с именем пути name в качестве аргумента.

Если указанный файл не существует, является каталогом вместо обычного файла, или по какой-либо другой причине не может быть открыт для чтения, то выбрасывается исключение FileNotFoundException.

Параметры:
name - имя файла, зависящее от операционной системы.
Исключения:
FileNotFoundException - если файл не существует, является каталогом вместо обычного файла или по какой-либо другой причине не может быть открыт для чтения.
SecurityException - если менеджер безопасности существует и его метод checkRead запрещает чтение файла.
См. также:
SecurityManager.checkRead(java.lang.String)

FileInputStream

public FileInputStream(File file)
                throws FileNotFoundException

Создаёт FileInputStream путём открытия соединения с фактическим файлом, файлом, указанным объектом File file в файловой системе. Новый объект FileDescriptor создаётся для представления этого соединения с файлом.

Вначале, если существует менеджер безопасности, вызывается его метод checkRead с путём, представленным аргументом file, в качестве аргумента.

Если указанный файл не существует, является каталогом вместо обычного файла, или по какой-либо другой причине не может быть открыт для чтения, то выбрасывается исключение FileNotFoundException.

Параметры:
file - файл, который должен быть открыт для чтения.
Исключения:
FileNotFoundException - если файл не существует, является каталогом вместо обычного файла или по какой-либо другой причине не может быть открыт для чтения.
SecurityException - если менеджер безопасности существует и его метод checkRead запрещает чтение файла.
См. также:
File.getPath(), SecurityManager.checkRead(java.lang.String)

FileInputStream

public FileInputStream(FileDescriptor fdObj)

Создаёт FileInputStream используя дескриптор файла fdObj, который представляет собой существующее соединение с фактическим файлом в файловой системе.

Если существует менеджер безопасности, вызывается его метод checkRead с дескриптором файла fdObj в качестве аргумента, чтобы проверить, разрешено ли чтение дескриптора файла. Если чтение дескриптора файла запрещено, то выбрасывается исключение SecurityException.

Если fdObj равно null, то выбрасывается исключение NullPointerException.

Этот конструктор не выбрасывает исключение, если fdObj invalid. Однако, если методы вызываются на результирующем потоке для попытки ввода-вывода по потоку, то выбрасывается исключение IOException.

Параметры:
fdObj - дескриптор файла, который должен быть открыт для чтения.
Исключения:
SecurityException - если менеджер безопасности существует и его метод checkRead запрещает чтение дескриптора файла.
См. также:
SecurityManager.checkRead(java.io.FileDescriptor)

Методы

read

public int read()
         throws IOException

Считывает байт данных из этого входного потока. Этот метод блокируется, если входные данные ещё недоступны.

Унаследован от:
read в классе InputStream
Возвращает:
следующий байт данных или -1, если достигнут конец файла.
Исключения:
IOException - если произошла ошибка ввода-вывода.

read

public int read(byte[] b)
         throws IOException

Считывает до b.length байтов данных из этого входного потока в массив байтов. Этот метод блокируется, пока некоторые входные данные недоступны.

Переопределяет:
read в классе InputStream
Параметры:
b - буфер, в который считываются данные.
Возвращает:
общее количество считанных байтов в буфер, или -1, если больше нет данных, так как достигнут конец файла.
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
InputStream.read(byte[], int, int)

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException

Считывает до len байтов данных из этого входного потока в массив байтов. Если len не равно нулю, метод блокируется, пока некоторые входные данные недоступны; в противном случае байты не считываются и возвращается 0.

Переопределяет:
read в классе InputStream
Параметры:
b - буфер, в который считываются данные.
off - начальный смещение в целевом массиве b
len - максимальное количество считываемых байтов.
Возвращает:
общее количество считанных байтов в буфер, или -1 если больше нет данных, так как достигнут конец файла.
Исключения:
NullPointerException - если b равно null.
IndexOutOfBoundsException - если off отрицательное, len отрицательное или len больше b.length - off
IOException - если произошла ошибка ввода-вывода.
См. также:
InputStream.read()

skip

public long skip(long n)
          throws IOException

Пропускает и отбрасывает n байтов данных из входного потока.

Метод skip может, по разным причинам, пропустить меньшее количество байтов, возможно 0. Если n отрицательное, метод попытается пропустить байты назад. В случае, если базовый файл не поддерживает обратный пропуск в текущей позиции, выбрасывается исключение IOException Возвращается фактическое количество пропущенных байтов. Если пропуск вперёд, возвращается положительное значение. Если пропуск назад, возвращается отрицательное значение.

Этот метод может пропустить больше байтов, чем осталось в базовом файле. Это не вызывает исключения, и количество пропущенных байтов может включать в себя некоторое количество байтов, которые были за пределами EOF базового файла. Попытка чтения из потока после пропуска за концом файла приведет к значению -1, указывающему на конец файла.

Переопределяет:
skip в классе InputStream
Параметры:
n - количество байтов, которые необходимо пропустить.
Возвращает:
фактическое количество пропущенных байтов.
Исключения:
IOException - если n отрицательное, если поток не поддерживает поиск, или если произошла ошибка ввода-вывода.

available

public int available()
              throws IOException

Возвращает оценку количества оставшихся байтов, которые можно прочитать (или пропустить) из этого входного потока без блокировки следующим вызовом метода для этого входного потока. Возвращает 0, когда позиция файла находится за EOF. Следующий вызов может быть от того же потока или другого потока. Единовременное чтение или пропуск такого количества байтов не заблокирует, но может прочитать или пропустить меньше байтов.

В некоторых случаях неблокирующее чтение (или пропуск) может казаться заблокированным, когда оно просто медленно выполняется, например, при чтении больших файлов по медленным сетям.

Переопределяет:
available в классе InputStream
Возвращает:
оценка количества оставшихся байтов, которые можно прочитать (или пропустить) из этого входного потока без блокировки.
Исключения:
IOException - если этот входной поток файла был закрыт вызовом close или произошла ошибка ввода-вывода.

close

public void close()
           throws IOException

Закрывает этот входной поток файла и освобождает все системные ресурсы, связанные с потоком.

Если у этого потока есть связанный канал, то он также закрывается.

Унаследован от:
close в интерфейсе Closeable
Унаследован от:
close в интерфейсе AutoCloseable
Переопределяет:
close в классе InputStream
Исключения:
IOException - если произошла ошибка ввода-вывода.

getFD

public final FileDescriptor getFD()
                           throws IOException

Возвращает объект FileDescriptor, который представляет собой соединение с фактическим файлом в файловой системе, используемое этим потоком FileInputStream.

Возвращает:
объект дескриптора файла, связанный с этим потоком.
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
FileDescriptor

getChannel

public FileChannel getChannel()

Возвращает уникальный объект канала FileChannel, связанный с этим входным потоком файла.

Начальное значение position возвращенного канала будет равно количеству байтов, считанных из файла до сих пор. Чтение байтов из этого потока увеличит позицию канала. Изменение позиции канала, явное или посредством чтения, изменит позицию файла этого потока.

Возвращает:
канал файла, связанный с этим входным потоком файла
С:
1.4

finalize

protected void finalize()
                 throws IOException

Обеспечивает, чтобы метод close этого входного потока файла вызывался, когда больше нет ссылок на него.

Переопределяет:
finalize в классе Object
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
close()

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API