注册 登录
编程论坛 C图形专区

如何读取二进制字头信息,菜鸟求帮忙

ohmygodxxc 发布于 2008-06-04 09:43, 1321 次点击
给的是FY2数据头,可是不知道如何读取成可读的相关信息,请高手帮忙,非常感谢
一、投影数据头
长度为2048字节,具体定义如下:
struct SGpfHeader    //投影数据头(Project Data Header), 2048字节
{
    WORD wFileID;    //2,固定为GF
    WORD wVersion;    //4,版本号
    WORD wSatID;    //6,卫星标识,FY2C为35
    WORD wYear;        //8,开始扫描时间:年
    WORD wMonth;    //10,开始扫描时间:月
    WORD wDay;        //12,开始扫描时间:日
    WORD wHour;        //14,开始扫描时间:时
    WORD wMinute;    //16,开始扫描时间:分
    WORD wChNums;    //18,通道数目
    WORD wPjType;    //20, 投影类型,不投影=0, 等经纬度=1, 麦卡托=2, 兰伯特=3,                        //极射赤面=4, 艾尔伯斯投影=5
    WORD wWidth;    //22,宽度
    WORD wHeight;    //24,高度
    float fCLonRes;//28,投影展开面上中心点像素对应的地球点的分辨率
    float fCLatRes;//32,投影展开面上中心点像素对应的地球点的分辨率
    float fStdLat1;//36,标准纬度1
    float fStdLat2;//40,标准纬度2
    float fEarthR;    //44,地球半径
    float fMinLat;    //48,投影范围最小纬度
    float fMaxLat;    //52,投影范围最大纬度
    float fMinLon;    //56,投影范围最小经度
    float fMaxLon;    //60,投影范围最大经度
    float fLtLat;    //64,左上角纬度
    float fLtLon;    //68,左上角经度
    float fRtLat;    //72,右下角纬度
    float fRtLon;    //76,右下角经度
    float fLbLat;    //80,左下角纬度
    float fLbLon;    //84,左下角经度
    float fRbLat;    //88,右上角纬度
    float fRbLon;    //92,右上角经度
    float fStdLon;    //96,标准经度(中心经度)
    float fCenterLon;    //100,中心经度
    float fCenterLat;    //104,中心纬度
    BYTE  ucChIndex[128]; //104+128=232,通道索引:红外1为1,红外2为2,红外3为3,红外4为4,可见光为5
    float fPLonRes;    //236,投影展开面的经向分辨率
    float fPLatRes;    //240,投影展开面的纬向分辨率
    char cReserved[1808];//2048
};
4 回复
#2
随风逐流2008-06-04 09:58
LZ你發錯地方了

這屬於C還是C++
#3
ohmygodxxc2008-06-04 10:07
用VB读取啊
#4
ohmygodxxc2008-06-04 10:11
怎么我的帖子到C这了啊
#5
ohmygodxxc2008-06-04 10:12
怎么我的帖子到C这了啊
1