GDAL支持中文路径和Shp文件中文属性写入


在使用GDAL的过程中,为了支持中文,比需手动进行中文路径的设置,同时特别是在对Shp的属性进行中文输入的时候,都必须进行必要的设定。

为了支持中文路径,在注册了驱动之后,加上第三句就可以了。必须设置为“NO”。

GDALAllRegister(); 
OGRAllRegister();
CPLSetConfigOption("GDAL_FILENAME_IS_UTF8","NO");

=================================================================================  

为了支持Shp中的中文属性输入,在注册了驱动之后,也得加上一句。

CPLSetConfigOption( "SHAPE_ENCODING", "" );

有时候,也可以指定函数第二个选项为“CP936”

CPLSetConfigOption("SHAPE_ENCODING","CP936");

Shp中加入中文字段的示例代码如下:

wchar_t * wszChangedType = L"中国中文支持";
int len = WideCharToMultiByte(CP_UTF8, 0, wszChangedType, -1, NULL, 0, NULL, NULL);
char *szChangedType = (char*)malloc(len + 1); memset(szChangedType, 0, len + 1); WideCharToMultiByte(CP_UTF8, 0, wszChangedType, -1, szChangedType, len, NULL, NULL); poFeature->SetField(nChangedType,szChangedType);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM