linqy的个人博客分享 http://blog.sciencenet.cn/u/linqy

博文

导出 Shapefile的字段名会被截断成3个汉字,解决方法

已有 1093 次阅读 2023-9-11 11:42 |系统分类:科研笔记

为什么ArcGIS 10.3导出 Shapefile的字段名会被截断成3个汉字?低版本中不是至少可以存储4个汉字吗?
原因
这个问题仍然与编码类型有关。
ArcGIS 10.2 以及更早的版本,ArcGIS写shapefile的时候,遇到中文默认使用Windows当前语言 字符集编码(也称 代码页/CodePage/OEM CodePage),例如中文一般使用的是 CodePage 936(GBK)。
ArcGIS 10.2.1 以及之后的版本,ArcGIS写shapefile的时候,默认使用的是 UTF-8 编码类型
这两种编码类型存储汉字所使用的字节数是不相同的,上面的关键字中我也给出了 wiki 的链接,有兴趣点进去看看详情。简言之,shapefile自身的限制是字段为9个字节,CP936编码下汉字通常为双字节存储,因此可以存储 9/2=4 个汉字;UTF-8 编码下汉字至少需要3个字节存储,因此最多只能存储 9/3=3 个汉字了

在运行中,输入regedit

打开注册表,定位到 ‘My Computer\HKEY_CURRENT_USER\Software\ESRI\Desktop 10.x’<li>创建项 ‘Common‘, 接着在其下创建 ‘CodePage’ 项, 添加 ‘字符串’,名称: dbfDefault,健值:oem(或者 936)


参考:https://www.yii666.com/article/734054.html



https://blog.sciencenet.cn/blog-3134052-1402228.html

上一篇:关于GeosecenePro与ArcGIS Pro在进行单体化模型打包slpk过程中的经验总结1
下一篇:基于geoscene pro生产建筑白模技术流程
收藏 IP: 60.208.132.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-27 23:49

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部