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 ...
随机推荐
- 关于MySQL中添加数据的两种方法
下面介绍两种执行SQL命令的方法,并作出相应地总结,第一种介绍一种常规用法,下面进行做简要地分析,首先我们需要执行打开数据库操作首先创建一个MySqlConnection对象,在其构造函数中传入一个连 ...
- python之tkinter使用举例-Button
tkinter用于编写GUI界面,python3默认已经包含,直接使用. # GUI:tkinter使用举例 import tkinter # 实例化tkinter对象 top = tkinter.T ...
- shell特殊变量的使用
$0 当前脚本名$# 传递给脚本的参数个数$1 第一个参数,依次类推$*,$@ 所有参数 $? 上一条命令的执行返回结果$$ 当前shell进程ID $PPID 父进程ID 下面的shell ...
- webapi 405 method not allowed
问题的原因:创建webapi controller时,习惯创建了mvc的controller,而非api controller.导致引用包有问题. 这两天搞webapi开发的时候,遇见了405错误. ...
- day14 装饰器模拟验证附加功能
user_list=[ {'}, {'}, {'}, {'}, ] current_dic={'username':None,'login':False} def auth_func(func): d ...
- MT【47】求一道分式的最值
评:技巧性很大,需要敏锐的洞察力通过柯西不等式把分母变成一样.请记住这个变形$$(a+b+ab+1)=(a+1)(b+1)\le\sqrt{(a^2+1)(b^2+1)}$$
- INSTALL_FAILED_INSUFFICIENT_STORAGE 的解决方法
今天用真机测试,出现了下面的情况 , 网上找了好多情况 , 都感觉比较费事,没什么效果,报错依旧, [2013-08-06 16:31:04 - Flashlight] Installation er ...
- harmakik
Solution 对于原树一个节点\(x\): \(f_x(h)\)表示,\(x\)作为一个深度为\(h\)的点时,\(x\)及其子树的安排方案有多少(不考虑\(x\)具体在深度为\(h\)的哪个点) ...
- 【Linux】fg、bg让你的进程在前后台之间切换
Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作:而一些服务型的 ...
- KMP 模式串匹配 失去匹配的瞬间你还有什么
KMP: KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KMP算法).KMP算法的关键 ...