将结构体按位写入文件

来源:互联网 发布:天文软件stellarium 编辑:程序博客网 时间:2024/06/18 14:59

现有一个结构体如下:

typedef struct _HPI_FILE_HEADER
{
    unsigned char      hpi[3];
    unsigned char      length;
    unsigned short int width;
    unsigned short int height;
    unsigned int       binarysize;
    unsigned int       color;
}HPI_FILE_HEADER;

将其按位写入一个文件:

声明:HPI_FILE_HEADER hpi_file_header;

赋值:。。。

写入文件:

ofstream ocoutHpi;
ocoutHpi.open(filename, ios::out|ios::binary);

        ocoutHpi.write((const char*)hpi_file_header.hpi, 3);
        ocoutHpi.write((const char*)&hpi_file_header.length, 1);
        ocoutHpi.write((const char*)&hpi_file_header.width, 2);
        ocoutHpi.write((const char*)&hpi_file_header.height, 2);
        ocoutHpi.write((const char*)&hpi_file_header.binarysize, 4);
        ocoutHpi.write((const char*)&hpi_file_header.color, 4);

ocoutHpi.close();