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

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] "海南省

你可能感兴趣的:(R,语言)