Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
821 of 1492 menu
◀ ▶

BinaryWriter

BinaryWriter оборачивает MemoryStream или другой Stream. Числа пишут через Write, позицию меняют через Seek. Читают обратно BinaryReader после ms.Position = 0.

Синтаксис

BinaryWriter writer = new BinaryWriter( stream, Encoding.UTF8, leaveOpen: true);

Пример

Давайте записать int и прочитать его:

using System; using System.IO; using System.Text; class Program { static void Main() { MemoryStream ms = new MemoryStream(); BinaryWriter writer = new BinaryWriter( ms, Encoding.UTF8, leaveOpen: true); writer.Write(1); ms.Position = 0; BinaryReader reader = new BinaryReader( ms, Encoding.UTF8, leaveOpen: true); int res = reader.ReadInt32(); Console.WriteLine(res); reader.Dispose(); writer.Dispose(); ms.Dispose(); } }

Результат выполнения кода:

1

Пример

Давайте записать bool и double:

using System; using System.IO; using System.Text; class Program { static void Main() { MemoryStream ms = new MemoryStream(); BinaryWriter writer = new BinaryWriter( ms, Encoding.UTF8, leaveOpen: true); writer.Write(true); writer.Write(1.5); ms.Position = 0; BinaryReader reader = new BinaryReader( ms, Encoding.UTF8, leaveOpen: true); bool flag = reader.ReadBoolean(); double num = reader.ReadDouble(); Console.WriteLine(flag); Console.WriteLine(num == 1.5); reader.Dispose(); writer.Dispose(); ms.Dispose(); } }

Результат выполнения кода:

True True

Пример

Давайте записать строку "abcde":

using System; using System.IO; using System.Text; class Program { static void Main() { MemoryStream ms = new MemoryStream(); BinaryWriter writer = new BinaryWriter( ms, Encoding.UTF8, leaveOpen: true); writer.Write("abcde"); ms.Position = 0; BinaryReader reader = new BinaryReader( ms, Encoding.UTF8, leaveOpen: true); string res = reader.ReadString(); Console.WriteLine(res); reader.Dispose(); writer.Dispose(); ms.Dispose(); } }

Результат выполнения кода:

"abcde"

Смотрите также

  • Write,
    перегрузки записи
  • BinaryReader,
    чтение из того же потока
  • Stream,
    общий поток байтов
  • MemoryStream,
    буфер для проверки
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить