GDAL中文件的驱动及对应的文件格式(转) https://blog.csdn.net/haojknm/article/details/5851968
GDALDriver * poDriver;
char *pszFormat=GetOutimgInfo(m_strInput);
poDriver = GetGDALDriverManager()->GetDriverByName(pszFormat);
char* GetOutimgInfo(CString& Outimg)
{
// GDAL 内部对各种格式自定义的表示符
char *pszFileSName[]={
"VRT",//: Virtual Raster
"GTiff",//: GeoTIFF
"NITF",//: National Imagery Transmission Format
"HFA",//: Erdas Imagine Images (.img)
"ELAS",//: ELAS
"AAIGrid",//: Arc/Info ASCII Grid
"DTED",//: DTED Elevation Raster
"PNG",//: Portable Network Graphics
"JPEG",//: JPEG JFIF
"MEM",//: In Memory Raster
"GIF",//: Graphics Interchange Format (.gif)
"BSB",//: Maptech BSB Nautical Charts
"XPM",//: X11 PixMap Format
"BMP",//: MS Windows Device Independent Bitmap
"PCIDSK",//: PCIDSK Database File
"HDF4Image",//: HDF4 Dataset
"PNM",//: Portable Pixmap Format (netpbm)
"ENVI",//: ENVI .hdr Labelled
"EHdr",//: ESRI .hdr Labelled
"PAux",//: PCI .aux Labelled
"MFF",//: Atlantis MFF Raster
"MFF2",//: Atlantis MFF2 (HKV) Raster
"BT",//: VTP .bt (Binary Terrain) 1.3 Format
"FIT",//: FIT Image
"OTHER"}; ///// 各种文件格式的后缀
char * pszFileExt[]={
".vrt",//: Virtual Raster
".tif",//: GeoTIFF
"????",//: National Imagery Transmission Format
".img",//: Erdas Imagine Images (.img)
"????",//: ELAS
"????",//: Arc/Info ASCII Grid
"????",//: DTED Elevation Raster
".png",//: Portable Network Graphics
".jpg",//: JPEG JFIF
"????",//: In Memory Raster
".gif",//: Graphics Interchange Format (.gif)
"????",//: Maptech BSB Nautical Charts
"????",//: X11 PixMap Format
".bmp",//: MS Windows Device Independent Bitmap
"????",//: PCIDSK Database File
".hdf",//: HDF4 Dataset
"????",//: Portable Pixmap Format (netpbm)
".hdr",//: ENVI .hdr Labelled
"????",//: ESRI .hdr Labelled
".pix",//: PCI .aux Labelled
"????",//: Atlantis MFF Raster
"????",//: Atlantis MFF2 (HKV) Raster
"????",//: VTP .bt (Binary Terrain) 1.3 Format
"????",//: FIT Image
".other"}; /// 得到字符串的最后四个字符
CString OutFilename = Outimg;
OutFilename.TrimRight();
CString pszExt = OutFilename.Right(4); char *pszFormat = "GTiff";
int loop=0;
while(strcmp(pszFileSName[loop],"OTHER") != 0)
{
if(pszExt.CompareNoCase(pszFileExt[loop]) == 0)
{
pszFormat = pszFileSName[loop];
break;//
}
loop++;
}
return pszFormat;
}
GDAL中文件的驱动及对应的文件格式(转) https://blog.csdn.net/haojknm/article/details/5851968的更多相关文章
- js中index()的四种经典用法(转https://blog.csdn.net/superit401/article/details/51726826)
<!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...
- 数组中&a与&a[0]的区别 转载自http://blog.csdn.net/FX677588/article/details/74857473
在探讨这个问题之前,我们首先来看一道笔试题,如下: [摘自牛客网]下列代码的结果是:(正确答案是 C) main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)( ...
- 虚拟机中的CentOS7如何上网?---https://blog.csdn.net/nothing2017/article/details/61420767
虚拟机中的CentOS7如何上网?https://blog.csdn.net/nothing2017/article/details/61420767
- 向txt文件中写入内容(覆盖重写与在末尾续写+FileOutputStream与FileWriter)(转发:https://blog.csdn.net/bestcxx/article/details/51381460)
!!!! 读取txt文件中的内容 import java.io.BufferedReader; import java.io.File; import java.io.FileReader; /** ...
- 如何简单地理解Python中的if __name__ == '__main__'(https://blog.csdn.net/yjk13703623757/article/details/77918633)
1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...
- 通信中的错误代码 (repost from https://blog.csdn.net/zzhuan_1/article/details/80066716)
• 100 - 继续.• 101 - 切换协议.• 110 重新启动标记答复.• 120 服务已就绪,在 nnn 分钟后开始.• 125 数据连接已打开,正在开始传输.• 150 文件状态正常,准备打 ...
- 比较C++中的4种类型转换方式(转自http://blog.csdn.net/hrbeuwhw/article/details/7884797)
C++的四种cast操作符的区别 Q:什么是C风格转换?什么是static_cast, dynamic_cast 以及 reinterpret_cast?区别是什么?为什么要注意? A:转换的含义是通 ...
- git中利用rebase来压缩多次提交 ----- 原文:https://blog.csdn.net/itfootball/article/details/44154121
之前我们用git merge –squash来将分支中多次提交合并到master后,只保留一次提交历史.但是有些提交到github远程仓库中的commit信息如何合并呢? 使用下面的命令,最后一个数字 ...
- golang中defer的详解 转自https://blog.csdn.net/skh2015java/article/details/77081250
Go里的defer很有用,尤其在很多执行模块化操作时,初始化时给各个需要执行的模块传入参数,但是这些参数有些事在模块执行过程中才赋值的. 这时候有了defer就不会把代码写的很凌乱. Go的defer ...
随机推荐
- 【Linux】工作管理
在进行工作管理的行为中,其实每个工作都是目前bash的子进程,即彼此间是有相关性的.我们无法以job control的方式由tty1的环境去管理tty2的bash 当只有一个终端时,可以出现提示符让你 ...
- python之attrgetter函数对对象排序
# 使用attrgetter函数对对象排序 # attrgetter处理对象,itemgetter处理序列 from operator import attrgetter class user(): ...
- CF1045G
CF1045G 看了下题解,动态开点线段树,好像挺难的 #include <map> #include <cstdio> #include <algorithm> ...
- BZOJ3718[PA2014]Parking——树状数组
题目描述 你的老板命令你将停车场里的车移动成他想要的样子.停车场是一个长条矩形,宽度为w.我们以其左下角顶点为原点,坐标轴平行于矩形的边,建立直角坐标系.停车场很长,我们可以认为它一直向右边伸展到无穷 ...
- BZOJ2863[SHOI2012]魔法树——树链剖分+线段树
题目描述 输入 输出 样例输入 4 0 1 1 2 2 3 4 Add 1 3 1 Query 0 Query 1 Query 2 样例输出 3 3 2 树链剖分模板题,路径修改子树查询,注意节点 ...
- MT【26】ln(1+x)的对数平均放缩
评:1.某种程度上$ln(1+x)\ge \frac{2x}{2+x}$是最佳放缩. 2.这里涉及到分母为幂函数型的放缩技巧,但是不够强,做不了这题.
- matplotlib fill和fill_between
import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 5 * np.pi, 1000) y1 = np.sin(x ...
- CF1114E Arithmetic Progression(交互题,二分,随机算法)
既然是在CF上AC的第一道交互题,而且正是这场比赛让我升紫了,所以十分值得纪念. 题目链接:CF原网 题目大意:交互题. 有一个长度为 $n$ 的序列 $a$,保证它从小到大排序后是个等差数列.你不知 ...
- 使用debootstrap制作debian-jessie系统docker镜像
先看一下Docker官网提示:In general, you'll want to start with a working machine that is running the distribut ...
- JAVA多线程之中断机制(如何处理中断?)
一,介绍 这篇文章主要记录使用 interrupt() 方法中断线程,以及如何对InterruptedException进行处理.感觉对InterruptedException异常进行处理是一件谨慎且 ...