如题,下载的shp变成了CAD形源,网上找不到解决办法,我把CAD卸载了但还是会被错误识别,实在没办法了,请问该怎么解决😭
6条回答 默认 最新
关注让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
问题描述: 下载的shp文件被错误识别为CAD形源,尝试卸载CAD软件未能解决问题。 解决步骤:- 确认文件后缀名 首先需要确认下载的文件后缀名是否为.shp。如果不是,可以尝试手动修改后缀名为.shp再尝试打开。如果是.shp后缀名却被错误识别为CAD形源,可以尝试以下步骤。
- 利用文件关联性 在Windows操作系统中,每种文件类型都会与一个默认的程序关联,例如.docx文件默认关联着Microsoft Word。如果一个文件被错误关联了,可以通过更改文件关联性来解决。具体步骤如下: (1)选中.shp文件,右键选择“属性”。 (2)在属性窗口中,选择“打开方式”选项卡。 (3)点击“更改”按钮,选择正确的程序(例如ArcMap)并将“使用此程序打开所有shp文件”选项打勾。 (4)点击“确定”按钮保存更改。
- 手动打开 如果以上两种方法均未能解决问题,可以尝试手动打开文件。打开ArcMap软件后,选择“文件”中的“打开”,在弹出的窗口中选择.shp文件即可。 代码示例: (修改文件关联性)
import winreg # 查找.shp文件关联的程序路径 with winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, '.shp', 0, winreg.KEY_READ) as key: value, regtype = winreg.QueryValueEx(key, '') with winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, value + r'\shell\open\command', 0, winreg.KEY_READ) as key: value, regtype = winreg.QueryValueEx(key, '') # 更改文件关联性 with winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, '.shp', 0, winreg.KEY_ALL_ACCESS) as key: winreg.SetValueEx(key, '', 0, winreg.REG_SZ, 'ArcMap.Document') with winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, 'ArcMap.Document\shell\open\command', 0, winreg.KEY_ALL_ACCESS) as key: winreg.SetValueEx(key, '', 0, winreg.REG_SZ, value + ' "%1"')评论 打赏 举报解决 1无用