Запись структуры в файл - Как сделать так, чтобы в файл записывались только данные структуры? - C#

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

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

Здравствуйте!
using System.Runtime.Serialization.Formatters.Binary;
 
[Serializable]
public struct wav
{
    public char a;
        public ulong b;
}
    wav w = new wav();
    w.a = "a"; 
    w.b = 10;
 
    FileStream fs = new FileStream("rec.dat", FileMode.Create);
 
        BinaryFormatter bf = new BinaryFormatter();
        bf.Serialize(fs, wav);
...
При записи в файл этой структуры, в файл также записывается куча иной служебной информации. Как сделать так, чтобы в файл записывались только данные структуры?

Решение задачи: «Запись структуры в файл - Как сделать так, чтобы в файл записывались только данные структуры?»

textual
Листинг программы
using System.Runtime.InteropServices;
 
// и далее где-то в Вашем коде:
int size = Marshal.SizeOf(typeof(wav));
 
wav item = new wav();
item.a = 'a';
item.b = 100500;
 
IntPtr ptr = Marshal.AllocHGlobal(size);
Marshal.StructureToPtr(item, ptr, false);
 
byte[] structureData = new byte[size];
Marshal.Copy(ptr, structureData, 0, size);
 
Marshal.FreeHGlobal(ptr);

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


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

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

12   голосов , оценка 4.167 из 5
Похожие ответы