shp地圖文件包含中文時, 程序報錯的解決方法

shp地圖文件包含中文時, 有些程序不容中文(比如某些python),程序就會報錯。

其中一個解決方法是,修改shp文件。

有時候用讀SHP的軟件打開刪掉中文還是沒法解決,可能是你能看到的中文不見了,可以編碼方式或一些你沒看出來的中文還在。

這裏,我就用MATLAB重新生成一個沒中文的SHP.

可以看到,SHP中有各省份的名字,先建立一個中英省份名字一一對應的表p2。然後進行操作。

代碼如下:

function [outp]=changeshp()
    p=shaperead('bou2_4p.shp');
    mm=load('pro_name.mat');
    mm=mm.p2; %table of chinese to english
    
    outp={}
    for i =1:length(p)
        outp(i).Geometry=p(i).Geometry;
        outp(i).BoundingBox=p(i).BoundingBox;
        outp(i).X=p(i).X;
        outp(i).Y=p(i).Y;
        outp(i).AREA=p(i).AREA;
        outp(i).PERIMETER=p(i).PERIMETER;
        outp(i).BOU2_4M_=p(i).BOU2_4M_;
        outp(i).BOU2_4M_ID=p(i).BOU2_4M_ID;
        outp(i).ADCODE93=p(i).ADCODE93;
        outp(i).ADCODE99=p(i).ADCODE99;
        outp(i).NAME=''
        for ii =1:size(mm,1)
            if strcmp(mm{ii,1}{1},p(i).NAME)==1
                outp(i).NAME=mm{ii,2}{1};
                break
            end
        end
        
    end
    shapewrite(outp,'mychinamap.shp')  %%p
end

那麼,生成的mychinamap就可以給各種讀不了中文的程序讀了。

利用這個新的中國地圖SHP,可以導出各省的SHP,邏輯很程單,直接貼代碼了。

function [outp]=getpro(ipro)
    p=shaperead('mychinamap.shp');
    mm=load('pro_name.mat');
    mm=mm.p2;
    
    %ipro=14;
    outp={};
    outpi=1;
    for i =1:length(p)
        if strcmp(mm{ipro,2}{1},p(i).NAME)==1
            outp(outpi).Geometry=p(i).Geometry;
            outp(outpi).BoundingBox=p(i).BoundingBox;
            outp(outpi).X=p(i).X;
            outp(outpi).Y=p(i).Y;
            outp(outpi).AREA=p(i).AREA;
            outp(outpi).PERIMETER=p(i).PERIMETER;
            outp(outpi).BOU2_4M_=p(i).BOU2_4M_;
            outp(outpi).BOU2_4M_ID=p(i).BOU2_4M_ID;
            outp(outpi).ADCODE93=p(i).ADCODE93;
            outp(outpi).ADCODE99=p(i).ADCODE99;
            outp(outpi).NAME=p(i).NAME;
            outpi=outpi+1;
        end
    end
    outpi
    shapewrite(outp,[mm{ipro,2}{1},'_province.shp']);  %%p
    
end

 

无锡市shp地图文件是指使用ArcGIS软件创建的无锡市的地理信息文件,其文件格式为.shp,它包含了地理要素的几何形状和属性信息。 无锡市shp地图文件可以被用于地理信息系统(GIS)中,通过该文件可以实现对无锡市地理要素的空间分析、查询、可视化等功能。利用该文件,我们可以了解无锡市范围内的道路、河流、建筑物、农田等地理要素的几何形状,以及这些地理要素的属性信息,如道路名称、建筑物类型、土地利用等。 无锡市shp地图文件是一个非常有用的工具,可以帮助城市规划、交通规划、土地利用研究等相关部门进行全面分析。例如,城市规划部门可以利用该文件进行道路交通研究,了解无锡市交通拥堵情况;土地利用部门可以利用该文件分析土地分布情况,确定土地利用政策。 此外,无锡市shp地图文件还可以为无锡市的公众提供便捷的地理信息查询服务。借助该文件,我们可以了解无锡市各个区域的特点、交通情况以及周边设施等信息,方便我们进行旅行规划、房产选购、交通出行等决策。 总体而言,无锡市shp地图文件是一种重要的地理信息资源,它具有丰富的地理要素几何形状和属性信息,可以为城市规划、土地管理、交通出行等各个领域提供有力支持,同时也为公众提供了方便快捷的地理信息查询服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值