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

Буферизация потока в C#

Класс BufferedStream снижает число системных вызовов, накапливая мелкие Read/Write в промежуточном массиве.

Метод Flush принудительно отправляет буфер в нижележащий поток - важно перед закрытием файла.

Обернём файловый поток буфером. Один байт записан на диск после Flush; без Flush данные могли бы остаться во внутреннем буфере до Dispose:

using System.IO; using FileStream file = new("buf.bin", FileMode.Create); using BufferedStream buffered = new(file); buffered.WriteByte(9); buffered.Flush(); Console.WriteLine(new FileInfo("buf.bin").Length); // выведет 1

Через BufferedStream запишите два байта в pack.tmp и вызовите Flush.

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