如何读取二进制字头信息,菜鸟求帮忙
给的是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
};