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的更多相关文章

  1. js中index()的四种经典用法(转https://blog.csdn.net/superit401/article/details/51726826)

    <!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...

  2. 数组中&a与&a[0]的区别 转载自http://blog.csdn.net/FX677588/article/details/74857473

    在探讨这个问题之前,我们首先来看一道笔试题,如下: [摘自牛客网]下列代码的结果是:(正确答案是 C) main() { int a[5]={1,2,3,4,5}; int *ptr=(int *)( ...

  3. 虚拟机中的CentOS7如何上网?---https://blog.csdn.net/nothing2017/article/details/61420767

    虚拟机中的CentOS7如何上网?https://blog.csdn.net/nothing2017/article/details/61420767

  4. 向txt文件中写入内容(覆盖重写与在末尾续写+FileOutputStream与FileWriter)(转发:https://blog.csdn.net/bestcxx/article/details/51381460)

    !!!! 读取txt文件中的内容 import java.io.BufferedReader; import java.io.File; import java.io.FileReader; /** ...

  5. 如何简单地理解Python中的if __name__ == '__main__'(https://blog.csdn.net/yjk13703623757/article/details/77918633)

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  6. 通信中的错误代码 (repost from https://blog.csdn.net/zzhuan_1/article/details/80066716)

    • 100 - 继续.• 101 - 切换协议.• 110 重新启动标记答复.• 120 服务已就绪,在 nnn 分钟后开始.• 125 数据连接已打开,正在开始传输.• 150 文件状态正常,准备打 ...

  7. 比较C++中的4种类型转换方式(转自http://blog.csdn.net/hrbeuwhw/article/details/7884797)

    C++的四种cast操作符的区别 Q:什么是C风格转换?什么是static_cast, dynamic_cast 以及 reinterpret_cast?区别是什么?为什么要注意? A:转换的含义是通 ...

  8. git中利用rebase来压缩多次提交 ----- 原文:https://blog.csdn.net/itfootball/article/details/44154121

    之前我们用git merge –squash来将分支中多次提交合并到master后,只保留一次提交历史.但是有些提交到github远程仓库中的commit信息如何合并呢? 使用下面的命令,最后一个数字 ...

  9. golang中defer的详解 转自https://blog.csdn.net/skh2015java/article/details/77081250

    Go里的defer很有用,尤其在很多执行模块化操作时,初始化时给各个需要执行的模块传入参数,但是这些参数有些事在模块执行过程中才赋值的. 这时候有了defer就不会把代码写的很凌乱. Go的defer ...

随机推荐

  1. git 快捷键

    实际上就是弄了个别名 $ git config --global alias.st status $ git config --global alias.ci commit $ git config ...

  2. javaIO缓冲区

    java中IO类分类. 图来自网络 缓冲区:应用程序在内存中开辟的一个空间.用来放置需要被写入或写出的数据. 使用缓冲区的 优点:使得应用程序操作磁盘(或者说是与磁盘的通信)的次数降低,提高应用程序的 ...

  3. CPK公式

    CP:Cp = (USL-LSL)/6σ  USL上限值.LSL下限值.σ为产品特性值总体标准差: CPK:Cpk=Cp-|M-μ|/3σ  μ为产品特性值的总体均值,σ为产品特性值总体标准差,M為目 ...

  4. linux中内存使用原理

    首先介绍一下linux中内存是如何使用的. 当有应用需要读写磁盘数据时,由系统把相关数据从磁盘读取到内存,如果物理内存不够,则把内存中的部分数据导入到磁盘,从而把磁盘的部分空间当作虚拟内存 来使用,也 ...

  5. 最大获利 HYSBZ - 1497 (最大权闭合图)

    最大权闭合图: 有向图,每个点有点权,点权可正可负.对于任意一条有向边i和j,选择了点i就必须选择点j,你需要选择一些点使得得到权值最大. 解决方法: 网络流 对于任意点i,如果i权值为正,s向i连容 ...

  6. MT【204】离散型最值

    (联赛一试2006,14).将2006表示成5个正整数$x_1,x_2,x_3,x_4,x_5$之和.记$S=\sum\limits_{1\le i<j\le5}{x_ix_j}$问:(1) 当 ...

  7. emWin 文字图形同时刷新导致图形显示异常

    @2018-7-10 实现目标 一 BUTTON 控制文字图形的刷新切换,具体为 BUTTON 初次按下,文字显示为 “开始” .填充圆显示为绿色,再次按下,文字显示为 “停止” .填充圆显示为红色 ...

  8. Java: |(或运算) 与 多选判断

    今天需要在程序中做一个多选判断,突然想起以前经常遇到的 x |= y | z; 这样的,我也明白这个是多选的用意,但为什么能达到我们希望的多选操作,我还真的没去研究过. 今天早上,百度了一下,搜索到了 ...

  9. 使用React.cloneElement()给子组件传值

    React提供了一个克隆组件的API: React.cloneElement( element, [props], [...child] ) 可以利用该方法,给子组件传值,使用如下: class Pa ...

  10. java.sql.SQLException: Prepared or callable statement has more than 2000 parameter markers及解决方案

    1. 问题 最近在项目中修bug的时候,碰到这样一个错误: Caused by: java.sql.SQLException:Prepared or callable statement has mo ...