FileStream и метод Seek

147
31 мая 2019, 22:20

Как при помощи метода FileStream.Seek считать часть массива байт от всего массива?

Ситуация такая, есть некий файл размером 177000 байт, где-то ближе к его концу есть 40 байт, которые мне необходимо считать. После этих 40 байт, есть ещё ~ 4000 байт.

Как считать участок размером 40 байт?

Answer 1

Так например:

  byte[] dataReaded = null;
  using(var fs = new FileStream(...))
  {
    if(fs.CanSeek)
    {
      var endPartSize = 4000;
      var readSegmentSize = 40;
      fs.Seek(fs.Length - (endPartSize + readSegmentSize), 
              SeekOrigin.Begin);
      dataReaded = new byte[readSegmentSize];
      fs.Read(dataReaded, 0, dataReaded.Length);
    }
    else throw InvalidOperationException("Stream is not seekable");
  }
  return dataReaded;
READ ALSO
Переходы между уровней

Переходы между уровней

Всем привет, наверно я уже надоел) задаю и задаю вопросыЯ и не знаю как правильно задать этот вопрос

199
Занести данные в SQL циклом

Занести данные в SQL циклом

Можете подсказать как занести данные в SQL цикломНапример: я получаю циклом данные из 1С и эти данные занести в SQL

136
Логическая операция в DataGridView

Логическая операция в DataGridView

Есть DataGridView с автоматическим заполнением строкНеобходимо скрывать всех кто не на втором курсе и со стипендией, то есть должны оставаться...

175
Закрыть соединение с 1С с помощью C#

Закрыть соединение с 1С с помощью C#

Подскажите как закрыть соединение с 1С на С#, чтобы не висел сеанс в Администрировании серверов 1СПодключаюсь через COMConnector

161