下面是一个关于该主题的类似问题,其中包含对该文件的良好描述:
how to read NASA .hgt binary files
总的来说,我是编程新手,到目前为止,我的努力非常有限。我的最终目标是访问高程数据,并将其存储在一个二维数组中,以便于访问。我一直在尝试一次读取2个字节的文件,但我不知道下一步该做什么。这是我到目前为止所得到的:
#include <iostream>
#include <fstream>
using namespace std;
int main ()
{
ifstream::pos_type size;
char * memblock;
ifstream file ("N34W119.hgt", ios::in|ios::binary|ios::ate);
if (file.is_open())
{
size = 2;
memblock = new char [size];
file.seekg (0, ios::beg);
file.read (memblock, size);
//I don't know what to do next
file.close();
}
return 0;
}谢谢你的帮助!
发布于 2012-12-11 11:24:43
// SRTM_version 1201 or 3601
int height[SRTM_version][SRTM_version];
for ( int r = 0; r < SRTM_version ; r++ ) {
for ( int c = 0 ; c < SRTM_verision; c++ ) {
height[r][c] = (memblock[0] << 8) | memblock[1];
}
}https://stackoverflow.com/questions/13810178
复制相似问题