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, , wszChangedType, -, NULL, , NULL, NULL);
char *szChangedType = (char*)malloc(len + );
memset(szChangedType, , len + );
WideCharToMultiByte(CP_UTF8, , wszChangedType, -, szChangedType, len, NULL, NULL); poFeature->SetField(nChangedType,szChangedType);
GDAL支持中文路径和Shp文件中文属性写入的更多相关文章
- arcgis10.2转shp文件中文乱码问题解决方案
从ArcGIS的数据源入手,自己升级ArcGIS for Desktop到10.2.0,然后用该版本ArcGIS软件重新导出数据,竟然还是乱码.经咨询ArcGIS技术支持,技术支持说必须保证shp文件 ...
- VS2017编译GDAL(64bit)+解决C#读取Shp数据中文路径的问题
编译GDAL过程比较繁琐,查阅了网上相关资料,同时通过实践,完成GDAL的编译,同时解决了SHP数据中文路径及中文字段乱码的问题,本文以“gdal-2.3.2”版本为例阐述整个编译过程. 一.编译准备 ...
- Portal for ArcGIS上传shp文件中文乱码可能情况
环境: windows Server 2008:Portal for ArcGIS 10.2:ArcGIS for Server 10.2:PostgreSQL 9.2:ArcGIS for Desk ...
- arcgis for android 读取shp文件中文乱码解决方法
设置注册表默认字符,即可解决中文乱码问题. 'dbfDefault' 设置方法1.开始--运行,输入”Regedit“,打开注册表.2.如是用的是 10.x 版本 ArcGIS Desktop,定位到 ...
- JAVA 写中文字符串到指定文件 中文乱码 问题解决
之前试过下面代码里面的注释掉的 方法,都不行,后来想到了不如指定编码格式试试,果真可以了. String as= “中文字符”; //byte[] b = as.getBytes(); try{ Fi ...
- eclipse 同一个package 有的文件 中文乱码,有的文件中文正常
1.这是编码格式导致的. 先在对应包名上右击,选择属性,将包内所有的文件都设置为GBK格式, 然后查看每个文件,如果有乱码,则将这个文件的编码格式单独设为 UTF-8 2.有个项目使用百度语音做开发, ...
- python gdal 修改shp文件的属性值
driver = ogr.GetDriverByName('ESRI Shapefile')datasource = driver.Open(shpFileName, 1)layer = dataso ...
- Java读取文件时中文路径处理
读取文件路径时可能存在以下情况: 1.空格,如果出现空格会转变成“%20” 2.中文路径,如果出现中文路径会变成URI编码“%e5%bc%80%e5%8f%91%e5%b7%a5%e7%a8%8b” ...
- ifstream中文路径问题分析
最近维护一个项目,遇到了ifstream在中文路径下打开文件失败的bug,我搜索了一下,最后整理成下文以后日后查阅. 一.问题重现 vs2008下创建一个简单win32工程. 使用ANSI编码方式:项 ...
随机推荐
- 【python学习】字符串相关
# -*- coding: utf-8 -*- # ========================================================================== ...
- 如何在DELL R420上部署EXSI虚拟化(服务器上的安装)
<VMware ESXi>是一款虚拟化软件.软件支持windows平台客户端界面管理,客户端界面与正常使用的虚拟机WMware Workstation界面功能类似VMware ESXI 服 ...
- Android HandlerThread与IntentService
HandlerThread本质上是一个线程类,它继承了Thread: HandlerThread有自己的内部Looper对象,可以进行looper循环: 通过获取HandlerThread的loope ...
- [VBA]汇总多个工作簿的指定工作表到同一个工作簿的指定工作表中
sub 汇总多个工作簿() Application.ScreenUpdating = False Dim wb As Workbook, f As String, l As String, n As ...
- fiddler抓取app的https的包
线上问题的排查有时候需要抓包,但是是https协议的,则需要安装证书 在Android 6.0 (API level 23)及以前,APP默认信任系统自带的CA证书以及用于导入的CA证书,Androi ...
- java调用支付宝 支付api 【沙箱环境】
由于支付宝支付api需要各种备案,但学校项目需要引入支付功能 先演示 ,所以采用 沙箱环境 一.登录支付宝 开放平台 及配置相关 https://openhome.alipay.com/platf ...
- python pytorch numpy DNN 线性回归模型
1.直接奉献代码,后期有入门更新,之前一直在学的是TensorFlow, import torch from torch.autograd import Variable import torch.n ...
- adobe Keychain mac
Keychain password access This question has been Answered. janec2070563 May 8, 2018 11:07 AM I consta ...
- java.math包简介
java.math包提供了java中的数学类 包括基本的浮点库.复杂运算以及任意精度的数据运算 '可以看得到,主要包括三个类一个枚举 BigDecimal和BigInteger接下来会详细介绍 先 ...
- 听说这样可以加快oracle入表速度
oracle 用occi编程的时候,批量提交使用绑定变量的方式,主要瓶颈再sql语句解析上,改成merge into后效率没有变化,但是使用绑定变量方法,能加快速度