c++读取标准高程hgt文件
时间: 2023-11-05 14:13:31 浏览: 72
读取标准高程(SRTM)HGT文件可以使用以下C++代码:
```c++
#include <iostream>
#include <fstream>
#include <vector>
std::vector<short> readHGTFile(std::string fileName, int size) {
std::ifstream file(fileName.c_str(), std::ios::binary);
if (!file) {
std::cout << "Error opening file: " << fileName << std::endl;
return std::vector<short>();
}
std::vector<short> data(size * size);
// Read the data
file.read(reinterpret_cast<char*>(&data[0]), size * size * sizeof(short));
// Check if there was an error
if (file.fail()) {
std::cout << "Error reading file: " << fileName << std::endl;
return std::vector<short>();
}
file.close();
return data;
}
```
这个函数读取指定文件名的SRTM HGT文件,并将数据存储在一个大小为`size*size`的`short`类型的向量中。如果出现任何错误,函数将返回一个空向量。你可以调用此函数来读取你需要的HGT文件并获取高程数据。