天天看點

GIS開發:DotSpatial修改shp檔案屬性表

DotSpatial是一個.NET的地理資訊開發類庫,使用C#語言進行開發,可以在Windows Forms視窗上顯示一個二維地圖,能夠打開shp、格網、影像等資料,進行一些常用的坐标系轉換等。

DotSpatial的開源項目網址:https://github.com/DotSpatial/DotSpatial

在使用C#的CS的系統開發中,DotSpatial是一個比較輕量級、實用的類庫,雖然不如gdal類庫功能那麼強大,但是在調用、初始化過程還是非常友善的。

下面對DotSpatial修改shp檔案的屬性表進行詳細的介紹:

1、需要引用的dll如下圖:

GIS開發:DotSpatial修改shp檔案屬性表

2、打開一個shp檔案

var _shapFile = Shapefile.OpenFile(_shapePath);

3、獲得shp的所有屬性,傳回的結果是C#中的DataTable,函數中的兩個參數是截取屬性的行數,開始行和一共多少行;

DataTable _dt = _shapFile.GetAttributes(0, _shapFile.NumRows());

4、修改DataTable中的每一個格子的值,最後将修改完成的DataTable指派給shp檔案;

_dt.Rows[i][_svalue] = _existEle.Element(_dvalue).Value;

_shapFile.SetAttributes(0, _dt);

實作代碼是比較友善的,而且也可根據自己的要求給shp檔案添加記錄,這對需要在shp存儲資訊是很有幫助的。

更多文章請關注公衆号檢視:

GIS開發:DotSpatial修改shp檔案屬性表

繼續閱讀