linux 下加载bou2_4p.shp后乱码问题

本文介绍在Linux环境下加载bou2_4p.shp文件遇到的乱码问题及解决方案。通过使用iconv函数将字符编码从GBK转换为UTF-8,成功解决了加载后的乱码问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux 下加载bou2_4p.shp后乱码问题

问题:
在linux 下加载bou2_4p.shp后乱,而win7上没有问题


> library(maptools)
> library(mapdata)
> library(maps)
> x <- readShapePoly("/srv/shiny-server/hrl12580/bou2_4p.shp")
> as.character(na.omit(unique(x@data$NAME)));
 [1] "\xba\xda\xc1\xfa\xbd\xad?"                          
 [2] "\xc4\xda\xc3?\xc5\xd7\xd4\xd6\xce\xc7\xf8"          
 [3] "\xd0?\xae?\xce\xe1\xb6\xfb\xd7\xd4\xd6\xce\xc7\xf8"
 [4] "\xbc\xaa\xc1\xd6?"                                  
 [5] "\xc1\xc9\xc4\xfe?"                                  
 [6] "\xb8\xca\xcb\xe0?"                                  
 [7] "\xba?\xb1?"                                         
 [8] "\xb1\xb1\xbe\xa9\xca\xd0"                           
 [9] "?\xce\xf7?"                                         
[10] "\xcc\xec\xbd\xf2\xca\xd0" 
......


解决办法:
使用iconv函数进行转换,如下
> as.character(na.omit(unique(iconv(x@data$NAME,"GBK","UTF-8"))));
 [1] "黑龙江省"         "内蒙古自治区"     "新疆维吾尔自治区" "吉林省"          
 [5] "辽宁省"           "甘肃省"           "河北省"           "北京市"          
 [9] "山西省"           "天津市"           "陕西省"           "宁夏回族自治区"  
[13] "青海省"           "山东省"           "西藏自治区"       "河南省"          
[17] "江苏省"           "安徽省"           "四川省"           "湖北省"          
[21] "重庆市"           "上海市"           "浙江省"           "湖南省"          
[25] "江西省"           "云南省"           "贵州省"           "福建省"          
[29] "广西壮族自治区"   "台湾省"           "广东省"           "香港特别行政区"  
[33] "海南省
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值