日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

GDAL读取Shp问题解决:Unable to open EPSG support file gcs.csv

發(fā)布時(shí)間:2023/12/10 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GDAL读取Shp问题解决:Unable to open EPSG support file gcs.csv 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在GIS軟件的開(kāi)發(fā)中,經(jīng)常用到開(kāi)源庫(kù)GDAL讀取Shp數(shù)據(jù),當(dāng)shp數(shù)據(jù)中包含投影信息時(shí),可能會(huì)遇到“Unable to open EPSG support file gcs.csv”錯(cuò)誤提示,該錯(cuò)誤是由于沒(méi)有設(shè)置“GDAL_DATA”引起的。

1.Shpefile文件組成

Shapefile文件指的是一種文件存儲(chǔ)的方法,實(shí)際上該種文件格式是由多個(gè)文件組成的。其中,要組成一個(gè)Shapefile,有三個(gè)文件是必不可少的,它們分別是".shp", ".shx"與 ".dbf" 文件。表示同一數(shù)據(jù)的一組文件其文件名前綴應(yīng)該相同。例如,存儲(chǔ)一個(gè)關(guān)于湖的幾何與屬性數(shù)據(jù),就必須有l(wèi)ake.shp,lake.shx與 lake.dbf三個(gè)文件。而其中“真正”的Shapefile的后綴為shp,然而僅有這個(gè)文件數(shù)據(jù)是不完整的,必須要把其他兩個(gè)附帶上才能構(gòu)成一組完 整的地理數(shù)據(jù)。除了這三個(gè)必須的文件以外,還有八個(gè)可選的文件,使用它們可以增強(qiáng)空間數(shù)據(jù)的表達(dá)能力。所有的文件名都必須遵循MS DOS的8.3文件名標(biāo)準(zhǔn)(文件前綴名8個(gè)字符,后綴名3個(gè)字符,如shapefil.shp),以方便與一些老的應(yīng)用程序保持兼容性,盡管現(xiàn)在許多新的程序都能夠支持長(zhǎng)文件名。此外,所有的文件都必須位于同一個(gè)目錄之中。

必須的文件:

  • .shp?— 圖形格式,用于保存元素的幾何實(shí)體。
  • .shx?— 圖形索引格式。幾何體位置索引,記錄每一個(gè)幾何體在shp文件之中的位置,能夠加快向前或向后搜索一個(gè)幾何體的效率。
  • .dbf?— 屬性數(shù)據(jù)格式,以dBase IV的數(shù)據(jù)表格式存儲(chǔ)每個(gè)幾何形狀的屬性數(shù)據(jù)。

其他可選的文件:

  • .prj?— 投影格式,用于保存地理坐標(biāo)系統(tǒng)與投影信息,是一個(gè)存儲(chǔ)well-known text投影描述符的文本文件。
  • .sbn?and?.sbx?— 幾何體的空間索引
  • .fbn?and?.fbx?— 只讀的Shapefiles的幾何體的空間索引
  • .ain?and?.aih?— 列表中活動(dòng)字段的屬性索引。
  • .ixs?— 可讀寫Shapefile文件的地理編碼索引
  • .mxs?— 可讀寫Shapefile文件的地理編碼索引(ODB格式)
  • .atx?—?.dbf文件的屬性索引,其文件名格式為shapefile.columnname.atx?(ArcGIS 8及之后的版本)
  • .shp.xml?— 以XML格式保存元數(shù)據(jù)。
  • .cpg?— 用于描述.dbf文件的代碼頁(yè),指明其使用的字符編碼。

2.檢查編譯的GDAL或者下載的dll是否包含“Data”

筆者編譯的GDAL目錄,如下圖所示(其中“GdalData”目錄名稱可自行指定):

該目錄內(nèi)容如下所示:

3.設(shè)置“GDAL_DATA”選項(xiàng)

設(shè)置“GDAL_DATA”有兩種方法:

(1)在環(huán)境變量中設(shè)置

具體步驟:

右鍵我的電腦-屬性-高級(jí)系統(tǒng)設(shè)置-選項(xiàng)“高級(jí)”-【環(huán)境變量】-“用戶變量”-【新建】

(2)在程序中讀取Shp數(shù)據(jù)時(shí)設(shè)置

具體代碼如下(其中路徑也可設(shè)置為相對(duì)路徑):

OSGeo.GDAL.Gdal.AllRegister();OSGeo.OGR.Ogr.RegisterAll();OSGeo.GDAL.Gdal.SetConfigOption("GDAL_DATA", @"D:\GDAL\GDAL\GDAL232\GdalData");OSGeo.OGR.Driver dr = OSGeo.OGR.Ogr.GetDriverByName("ESRI shapefile");OSGeo.OGR.DataSource ds = dr.Open(path, 0);

注:gdal2.3.2不支持中文路徑的設(shè)置,該路徑必須為全英文路徑(若大家解決該問(wèn)題,歡迎告知)。

?

轉(zhuǎn)載于:https://www.cnblogs.com/aizai846/p/10894314.html

總結(jié)

以上是生活随笔為你收集整理的GDAL读取Shp问题解决:Unable to open EPSG support file gcs.csv的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。