Чтение бинарного файла - C# (180915)

Узнай цену своей работы

Формулировка задачи:

Добрый день, подскажите как реализовать код. Имеется структура бинарного файла (не моего) нужно его прочесть. Структура: 00h…07h ASCII “DAQ_1.10” 08h…0Fh Частота дискретизации, Гц (64-bit IEEE double-precision format) 10h…13h Число каналов (32-bit integer) 14h Наличие данных PPS GPS 0/1 (8-bit integer) 15h…(15h+N*8-1) Коэффициенты преобразования уровней (64-bit IEEE double-precision format big-endian) 15h+N*8…15h+N*(8+2)-1 1-ый отсчет сигналов (16-bit signed integer) по всем N каналам (ch1, ch2,…, ch16) 15h+N*(8+2)…15h+N*(8+4)-1 2-ой отсчет сигналов (16-bit signed integer) по всем N каналам (ch1, ch2,…, ch16) 15h+N*(8+4)… И так далее Рассыпался в самом начале, делал вот так:
Листинг программы
  1. using (BinaryReader reader = new BinaryReader(File.Open(TB_NIDAQ_path.Text, FileMode.Open)))
  2. {
  3. name = reader.ReadChars(8);
  4. Fs = reader.ReadDouble();
  5. count = reader.ReadInt32();
  6. }
Но на данном этапе я благополучено считываю строку. Но Fs и count считываются не корректно (мусор). Что я делаю не так, подскажите?

Решение задачи: «Чтение бинарного файла»

textual
Листинг программы
  1.             using (BinaryReader reader = new BinaryReader(File.Open("signal_30.da1", FileMode.Open)))
  2.             {
  3.                 byte[] magic = reader.ReadBytes(8);
  4.                 double freq = BitConverter.ToDouble(reader.ReadBytes(8).Reverse().ToArray(), 0);
  5.                 int numChn= BitConverter.ToInt32(reader.ReadBytes(4).Reverse().ToArray(), 0);
  6.             }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.545 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут