我如果想打开一个已知到的文件格式我该如何做呢?

解决方案 »

  1.   

    //定义结构体,在.h文件中
    #pragma pack(1)
    struct
    {
    UINT16 u16ChengPort; //秤通讯口
    UINT32 u32ChengBPS; //秤通讯口速率
    UINT16 u16ICPort; //IC卡通讯口
    UINT32 u32ICBPS; //IC卡通讯口速率
    } m_sXTCS;
    #pragma pack()//在.cpp文件中
    //初始化结构体
    memset( &m_sXTCS, 0, sizeof(m_sXTCS) );
    m_sXTCS.u16ChengPort = 0; //秤通讯口
    m_sXTCS.u32ChengBPS = 9600; //秤通讯口速率
    m_sXTCS.u16ICPort = 0; //IC通讯口
    m_sXTCS.u32ICBPS = 9600; //IC通讯口速率//读入或写入文件
    FILE * fp;
    fp = fopen( "XTCS.dat", "rb" );
    if( fp == NULL )
    {//使用默认值写入文件
    fp = fopen( "XTCS.dat", "wb" );
    fwrite( &m_sXTCS, sizeof(m_sXTCS), 1, fp );
    }
    else
    {//从文件中读入
    fread( &m_sXTCS, sizeof(m_sXTCS), 1, fp );
    }
    fclose( fp );
      

  2.   

    http://www.codeguru.com/files/index.shtml
      

  3.   

    对照文件的格式,在你的派生DOC类中定义多种对象,如果只有C++基本类型,就不
    需要了,然后通过归档对象将文件数据读取。
      

  4.   

    按顺序读啊,当然你要计算出来struct的大小,以及成员各占几个字节,只要算的准,数据是跑不了的