昨天写的博客,将C#读取shp中文属性值乱码的问题应该可以解决,博客地址为:http://blog.csdn.net/liminlu0314/article/details/54096119,然后又测试发现中文路径,中文属性值如果有中文时,也会出现乱码,具体表现为偶数个汉字没有问题,奇数个汉字会出现乱码. 继续调试C#的源码,发现问题还是在于将C++库中返回的结果进行编码转换的时候导致的,源码位于OgrPINVOKE.cs文件中.截取原始的代码如下: protected class SWIGSt
从ArcGIS的数据源入手,自己升级ArcGIS for Desktop到10.2.0,然后用该版本ArcGIS软件重新导出数据,竟然还是乱码.经咨询ArcGIS技术支持,技术支持说必须保证shp文件中有一个.cpg文件.必须要用ArcGIS for Desktop 10.2.1及 以上版本,问题又滚回方案(1)了. 后在ArcGIS知乎平台上看到一篇关于shapefile与字符集编码设置的博客,按照其提供的方案,设置注册表默认字符,即可解决中文乱码问题.其关键步奏如下: 'dbfDefault