Skip to content

ЗаписьДанных / DataWriter

Объект предназначен для удобной записи различных типов данных в приемник. Необходимо соблюдать следующий порядок работы с данным объектом:

  • Создать или получить приемник даных.
  • Вызвать из приемника экземпляр объекта ЗаписьДанных.
  • Выполнить требуемые действия с помощью объекта.
  • Закрыть экземпляр объекта ЗаписьДанных. При необходимости использовать другие методы для работы с данными, требуется сначала закрыть экземпляр объекта ЗаписьДанных с помощью метода Закрыть, выполнить необходимые действия над данными, установить требуемую позицию для чтения из приемника и создать новый экземпляр ЗаписьДанных.

Свойства

КодировкаТекста / TextEncoding

  • Чтение: Да
  • Запись: Да

Тип значения: КодировкаТекста (TextEncoding), Строка (String)

Кодировка текста по-умолчанию для данного экземпляра ЗаписьДанных. Кодировка может быть задана как в виде значения перечисления КодировкаТекста, так и в виде строки с указанием названия кодировки.

КонвертируемыйРазделительСтрок / ConvertibleSplitterOfLines

  • Чтение: Да
  • Запись: Да

Тип значения: Строка (String)

Конвертируемый разделитель строк. Этот параметр влияет на поведение метода ЗаписатьСимволы.

ПорядокБайтов / ByteOrder

  • Чтение: Да
  • Запись: Нет

Тип значения: ПорядокБайтов (ByteOrder)

Порядок байтов по умолчанию.

РазделительСтрок / LineSplitter

  • Чтение: Да
  • Запись: Да

Тип значения: Строка (String)

Разделитель строк по-умолчанию. Это свойство влияет на поведение метода ЗаписатьСтроку.

Методы

Закрыть / Close

Вызывает метод СброситьБуферы. Если целевой поток был создан при создании объекта ЗаписьДанных, целевой поток также закрывается.

Записать / Write

Записывает данные в целевой поток.

Параметры

  • binaryDataOrReadResult: Записать экземпляр объекта ДвоичныеДанные в поток.

ЗаписатьБайт / WriteByte

Записывает один байт в целевой поток.

Параметры

  • number: Целое число, которое будет записано в целевой поток. Значение числа должно находиться в диапазоне от 0 до 255.

ЗаписатьБуферДвоичныхДанных / WriteBinaryDataBuffer

Записать байты из буфера двоичных данных в целевой поток.

Параметры

  • buffer: Буфер двоичных данных, который используется в качестве источника данных для записи в целевой поток.
  • positionInBuffer: Позиция в буфере, начиная с которой выполняется чтение байтов для записи в целевой поток. Необязательный. Значение по умолчанию: 0
  • number: Количество байтов, которые требуется записать в целевой поток. Необязательный. Значение по умолчанию: 0

ЗаписатьСимволы / WriteChars

Записывает символы заданной строки в целевой поток.

Параметры

  • line: Строка, символы которой будут записаны в поток.
  • encoding: Определяет кодировку текста для записи строки. Если не установлена, используется кодировка, заданная для данного объекта ЗаписьДанных. Кодировка может быть задана как в виде значения перечисления КодировкаТекста, так и в виде строки с указанием названия кодировки. Необязательный.

ЗаписатьСтроку / WriteLine

Записывает строку в целевой поток. Сначала записываются все символы строки, затем - разделитель строк.

Параметры

  • line: Строка, которая будет записана в поток.
  • encoding: Определяет кодировку текста для записи строки. Если не установлена, используется кодировка, заданная для данного объекта ЗаписьДанных. Кодировка может быть задана как в виде значения перечисления КодировкаТекста, так и в виде строки с указанием названия кодировки. Значение по умолчанию: Неопределено. Типы: КодировкаТекста (TextEncoding), Строка (String) Необязательный.
  • lineSplitter: Указывает строку, являющуюся разделителем строк в потоке после записи символов строк. Если параметр не указан, используется разделитель строк, указанный для текущего экземпляра объекта ЗаписьДанных. Значение по умолчанию: Неопределено. Необязательный.

ЗаписатьЦелое16 / WriteInt16

Записывает 16-разрядное число в целевой поток.

Параметры

  • number: Число, которое будет записано в целевой поток. Значение числа должно находиться в диапазоне от 0 до 65535.
  • byteOrder: Порядок байтов, который будет использован для кодировки числа при записи. Если не установлен, то будет использован порядок байтов, заданный для текущего экземпляра объекта ЗаписьДанных. Значение по умолчанию: Неопределено. Необязательный.

ЗаписатьЦелое32 / WriteInt32

Записать целое 32-битное число в целевой поток.

Параметры

  • number: Целое число, которое будет записано в целевой поток. Значение числа должно находиться в диапазоне от 0 до 2^32-1.
  • byteOrder: Порядок байтов, который будет использован для кодировки числа при записи. Если не установлен, то будет использован порядок байтов, заданный для текущего экземпляра объекта ЗаписьДанных. Значение по умолчанию: Неопределено. Необязательный.

ЗаписатьЦелое64 / WriteInt64

Записывает целое 64-битное число в целевой поток.

Параметры

  • number: Целое число, которое будет записано в целевой поток. Значение числа должно находиться в диапазоне от 0 до 2^64-1.
  • byteOrder: Порядок байтов, который будет использован для кодировки числа при записи. Если не установлен, то будет использован порядок байтов, заданный для текущего экземпляра объекта ЗаписьДанных. Значение по умолчанию: Неопределено. Необязательный.

СброситьБуферы / Flush

Сбрасывает все внутренние буферы в целевой поток, после чего вызывает метод СброситьБуферы целевого потока.

ЦелевойПоток / TargetStream

Возвращает целевой поток, в который выполняется запись.

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

Основной

Создает объект ЗаписьДанных для записи в указанный файл. Если файл с таким именем не существует, он будет создан. Параметр <Дописать> определяет, будут ли данные записаны в начало или в конец файла. После завершения работы с объектом, до закрытия потока, переданного в конструктор, объект необходимо закрыть с помощью метода Закрыть или НачатьЗакрытие. При этом используемый файл будет закрыт автоматически.

Параметры

  • file_stream: Имя файла или поток, в который будет выполнена запись.
  • textEncoding: Кодировка текста для создаваемого экземпляра ЗаписьДанных. Если не задана, то используется UTF-8. Значение по умолчанию: UTF8. Типы: КодировкаТекста (TextEncoding), Строка (String) Необязательный.
  • byteOrder: Порядок байтов, используемый по умолчанию для кодирования целых чисел при записи в поток. Значение по умолчанию: LittleEndian. Необязательный.
  • lineSplitter: Разделитель по умолчанию для строк, записываемых в поток. Если разделитель строк не задан, то используется строка ПС. Значение по умолчанию: ПС. Необязательный.
  • param5: Для файла: Определяет, будут ли данные записаны в начало или в конец файла:
  • Если Истина, то при открытии существующего файла запись будет выполнена в конец файла.
  • Иначе данные будут записываться с начала файла, перезаписывая существующие данные. Если заданный файл не существует, будет создан новый файл с указанным именем и значение параметра не повлияет на поведение конструктора. Значение по умолчанию: Ложь. Для потока: Определяет разделение строк в файле для конвертации в стандартный перевод строк ПС. Значение по умолчанию: ВК + ПС. Необязательный.
  • param6: Для файла: Определяет разделение строк в файле для конвертации в стандартный перевод строк ПС. Значение по умолчанию: ВК + ПС. Для потока: Если в начало файла или потока требуется записать метку порядка байтов (BOM) для используемой кодировки текста, то данный параметр должен иметь значение Истина. Значение по умолчанию: Ложь. Необязательный.
  • param7: Только для файла: Если в начало файла требуется записать метку порядка байтов (BOM) для используемой кодировки текста, то данный параметр должен иметь значение Истина. Значение по умолчанию: Ложь. Необязательный.