Arcgis使用过程中常见问题解决方法
- Arcgis
无法连接数据库/数据库连接或创建失败
解决方法
最近在使用arcgis过程中出现无法连接数据库或者是无法创建数据库。连接到数据库失败;无法创建新的数据库,权限被拒绝(如下图)。
出现这个原因是你所用的电脑系统文件dao360.dll损坏或缺失
。
解决办法: 首先检查一下电脑系统文件夹,文件夹位置:C:\Program Files (x86)\Common Files\Microsoft Shared\dao
,如果没有DAO文件夹或有DAO文件夹却没有dao360.dll
,则下载一个dao360.dll文件或者从其他电脑复制一个到相应的路径下
即可解决(没有DAO文件夹的先自己新建一个文件夹命名为DAO
)。
- 点击
add data
,不显示链接过的文件夹,显示空白
- 删除地图模板,默认模板
Win7路径:C:\Users\【当前登录用户名】\AppData\Roaming\ESRI\Desktop10.X\ArcMap\Templates\Normal.mxt
Win10路径:C:\Users\【当前登录用户名】\Desktop10.X\AppData\Roaming\ESRI\ArcMap\Templates\Normal.mxt
- 点击运行,输入regedit,选择
HKEY_CURRENT_USER\Software\ESRI,重命名ESRI为ESRI_1
shapefile数据属性表乱码或导出后在excel打开乱码
一般遇到这种问题有两个原因:
一是excel显示语言设置有问题;
二就是arcgis软件的问题;
- excel显示语言设置
打开Excel——【文件】——【选项】——【语言】,看看编辑语言。
选择中文,点击“设为默认值”,设定完成后重启一下Excel。
- arcgis相关设置.
原因: Shp文件的头文件中,一般会包含shp文件使用的编码类型信息,这个信息称为LDID(Language Driver ID),这样在使用应用程序打开shp的时候,应用程序就会自动判别用何种编码类型去正确读取它,而不会发生乱码。利用ArcGIS Desktop生产的shp数据中通常会包含这项信息。在Shp文件的子文件中,有时我们还会发现同名的*.cpg文件,cpg文件中也存储了编码信息,用记事本打开,可以看到(例如utf-8)。
以上二者被ArcGIS识别的优先顺序是,LDID优先于CPG文件。也就是如果头文件中没有约定读shapefile的编码类型时,如果这时刚好有个CPG文件,那么ArcGIS就会使用这里的编码类型读取。
但shapefile 是个开放格式,只要你了解了数据规范,完全可以脱离ArcGIS自己生产出来。在Windows中文语言设置下,假设你自己写代码或者使用第三方的程序生产了shapefile,例如MapGIS,默认使用CP936(GBK)编码存储,但是无论粗心大意还是有意为之没有在数据头文件中约定“我用了936!”。如果是ArcGIS 10.2和之前的版本,那么没问题,ArcGIS默认就是以这种方式识别,没有乱码。可是拿到ArcGIS 10.2.1,ArcGIS 10.2.2,ArcGIS 10.3.x 这几个版本中发现乱码了!在缺失LDID和CPG时,这几个版本默认使用UTF-8来读取shapefile,这样必然乱码了。
解决方法1: 在shapefile子文件旁边创建个记事本,修改为同名的CPG文件,文本内容oem或者936。这样 ArcGIS在读取的时候,就知道你的数据是这种编码类型存储的,从而按照正确的方式读取。
解决方法2: 在运行下面输入regedit,打开注册表编辑器,定位到HKEY_CURRENT_USER\Software\ESRI\Desktop 10.x’创建项‘Common’,接着在其下创建 ‘CodePage’ 项,添加‘字符串’,名称:dbfDefault,健值:oem(或者936)。
注意: 如果你用的刚好是10.2.1和10.2.2这两个版本,那么要打补丁后以下设置才生效。