针对ArcGIS10.2版本的解决办法(默认中文编码为OEM):

现有一个图层名称为“图层.shp”,以此为例:

1、拷贝一个cpg文件,修改名称为“图层.cpg”,并用文本打开cpg文件修改编码为“OEM”

2、修改默认编码:

第一步:打开cmd,输入"Regedit",打开注册表。

第二步:找到该路径:HKEY_CURRENT_USER\Software\ESRI\Desktop10.*

ArcGIS Runtime SDK for Android 加载shp数据,中文乱码问题-LMLPHP

第三步:在Desktop10.*下【新建】->【项】,命名该项为"Common";再在【Common】项下新建项【CodePage】

第四步:为CodePage项新建【字符串值】,命名为"dbfDefault",并修改其【数值数据】为"UTF-8"

ArcGIS Runtime SDK for Android 加载shp数据,中文乱码问题-LMLPHP

3、用ArcMap打开刚才的“图层.shp”,另存出去(例如命名为“图层new.shp”),此时另存的cpg文件中已经修改为“UTF-8”;

4、完成

此时使用ArcMap打开原来的“图层.shp”和“图层new.shp”都可以识别中文,在AS中导入“图层new.shp”也可以识别中文了。

05-11 22:33