Есть ли более быстрый способ прочитать данные с помощью FileStream?C#

Место общения программистов C#
Anonymous
 Есть ли более быстрый способ прочитать данные с помощью FileStream?

Сообщение Anonymous »

Я пытаюсь прочитать данные и хранить их в массиве как можно быстрее, и самый быстрый метод, который я обнаружил, был это. < /p>
var filePath = "data.dat";
FileStream fs = new FileStream(filePath, FileMode.Open);
bool[] buffer = new bool[fs.Length];

TimeSpan[] times = new TimeSpan[500000];
Stopwatch sw = new Stopwatch();

for (int r = 0; r < 500000; r++)
{
sw.Start();

int stackable = 0;
int counter = 0;

while ((stackable = fs.ReadByte()) != -1)
{
buffer[counter] = (stackable == 1);
counter++;
}

sw.Stop();
Console.WriteLine($"Elapsed: {sw.Elapsed}ms");
times[r] = sw.Elapsed;
sw.Reset();
}

Console.WriteLine($"Longest iteration: {times.Max()}ms");
< /code>
, который удается читать и обрабатывать около 9000 байтов в
Какова data looks like:
Изображение

https://hatebin.com/dcldbvrbdm

Подробнее здесь: https://stackoverflow.com/questions/707 ... filestream

Вернуться в «C#»