本人遇到一个读入数据的问题,数据是八字节的,前面三字节是空的,后面的5个字节是一个数字,请问怎么用file.Read()来读取它呢?该用什么数据类型来接收这个数据?

解决方案 »

  1.   

    难道是传说中的 __int64? 也许是一个 double?
      

  2.   

    不知道类型怎么读?八字节可能是double,也可能是int64,也可能是个结构体。后面5个字节是数字也不能确定是整数还是其他数据,
      

  3.   

    不一定使用 CFile
    你可以简单的使用运行库来完成,也就是直接使用 DOS 下的那种 FILE, fscanf 来完成
    fscanf(fp, "%d", &nValue);
    如果是二进制文件就需要自己解析了
      

  4.   

    你把8个Byte一起读进来  然后让它和 00011111 做并运算就是结果
      

  5.   

    看错了 是8byte  不是8bit
      

  6.   

    当然可以了char buffer[9];
    CFile file;
    cfile.Open("C:\\aaa.txt",CFile::modeRead);
    cfile.Read(buffer,8);
    buffer[8] = '\0';CString str = buffer;
    int num = atoi(str.Mid(3));
      

  7.   

    char buffer[9];
    CFile file;
    cfile.Open("C:\\aaa.txt",CFile::modeRead);
    cfile.Read(buffer,8);
    buffer[8] = '\0';int i = atoi(buffer+3);           //这样做更简单