GDAL創建UTF-8編碼格式的shp文件
1、設置全局選項:
OSGeo.GDAL.Gdal.SetConfigOption(“GDAL_FILENAME_IS_UTF8”, “YES”); // 支持中文
OSGeo.GDAL.Gdal.SetConfigOption(“SHAPE_ENCODING”, “UTF-8”);
網絡上基本是將SHAPE_ENCODING設置爲CP936:可以使屬性表字段支持中文
但是utf-8編碼也可以支持中文,按照此方法設置即可。
2、設置創建圖層選項(此步驟很重要)
string[] options = { “ENCODING=UTF-8” };
shpLayer = ds.CreateLayer(shpKey, null, OSGeo.OGR.wkbGeometryType.wkbPoint25D, options);
此處設置的選項,會對應保存到*.cpg文件中,當使用gdal讀取相應shp文件的時候,會採用cpg文件中的選項配置來解析shp文件。
3、剩餘正常讀寫操作即可。