Специализированная версия объекта Поток для работы данными, расположенными в файле на диске. Предоставляет возможность чтения из потока, записи в поток и изменения текущей позиции. По умолчанию, все операции с файловым потоком являются буферизированными, размер буфера по умолчанию - 8 КБ. Размер буфера можно изменить, в том числе - полностью отключить буферизацию при вызове конструктора. Следует учитывать, что помимо буферизации существует кэширование чтения и записи файлов в операционной системе, на которое невозможно повлиять программно.
Доступ: Чтение
Тип значения: Булево (Boolean)
Признак доступности записи в поток.
Доступ: Чтение
Тип значения: Булево (Boolean)
Признак доступности произвольного изменения позиции чтения/записи в потоке.
Доступ: Чтение
Тип значения: Булево (Boolean)
Признак доступности чтения из потока.
Доступ: Чтение
Содержит полное имя файла, включая путь
Вызов данного метода завершает работу с потоком. При попытке вызвать любой метод объекта, кроме метода Закрыть, будет вызвано исключение. При повторном вызове данного метода никаких действий выполняться не будет. Выполняемое действие зависит от используемого типа потока.
Записывает в поток заданное количество байтов из буфера по заданному смещению. Если в буфере меньше данных, чем требуется записать, вызывается исключение о недостаточном количестве данных в буфере. Запись в поток возможна только, если поток поддерживает запись. В противном случае при вызове метода будет вызвано исключение.
buffer: Буфер, из которого выбираются данные для записи.
positionInBuffer: Позиция в буфере, начиная с которой данные будут получены для записи в поток.
number: Количество байт, которые требуется записать.
Копирует данные из текущего потока в другой поток.
targetStream: Поток, в который будет выполняться копирование.
bufferSize: Размер буфера, используемого при копировании. Если параметр не задан, то система подбирает размер буфера автоматически.
Сдвигает текущую позицию потока на заданное количество байтов относительно начальной позиции. Если указано отрицательное смещение, позиция сдвигается в направлении к началу потока. Если изменение позиции недоступно (ДоступноИзменениеПозиции установлено в Ложь), будет сгенерировано исключение.
offset: Количество байтов, на которое нужно передвинуть позицию в потоке.
initialPosition: Начальная позиция, от которой отсчитывается смещение.
Числовым типом может быть представлено любое десятичное число. Над данными числового типа определены основные арифметические операции: сложение, вычитание, умножение и деление. Максимально допустимая разрядность числа 38 знаков.
Возвращает поток, который разделяет данные и текущую позицию с данным потоком, но не разрешает запись.
Выполняет чтение заданного количества байтов в указанный буфер по указанному смещению. Текущая позиция смещается вперед на фактическое количество прочитанных байтов. Чтение из потока возможно только, если поток поддерживает чтение. В противном случае, будет вызвано исключение. При чтении размер целевого буфера не меняется, а его содержимое перезаписывается фактически прочитанными данными. Если в буфере недостаточно места для записи прочитанных данных, происходит ошибка переполнения.
buffer: Буфер, в который выполняется чтение.
positionInBuffer: Позиция в целевом буфере, начиная с которой требуется записывать данные из потока.
number: Количество байт, которые требуется записать в целевой буфер.
Возвращает число прочитанных байт
Получает размер данных в байтах.
Сбрасывает все промежуточные буферы и производит запись всех незаписанных данных в целевое устройство.
Возвращает текущую позицию в потоке.
Числовым типом может быть представлено любое десятичное число. Над данными числового типа определены основные арифметические операции: сложение, вычитание, умножение и деление. Максимально допустимая разрядность числа 38 знаков.
Устанавливает размер потока. Если текущий размер превышает заданный, поток будет сокращен до заданного размера, а информация, превышающая заданный размер, будет потеряна. Если текущий размер потока меньше заданного, то содержимое потока между старым и новым размером не определено.