rgdal/terra/sf读取Shapefile失败:文件存在仍报错
无法解决“Cannot open data source”错误:Shapefile读取问题
我无法理解为何会出现“Cannot open data source”错误:文件路径至少有一个是正确的,且.shp、.dbf、.shx文件在同一文件夹中。该Shapefile可在ArcGIS中正常使用,我已经导出了ArcGIS生成的所有配套文件,但用rgdal、terra、sf包读取时均失败,仅raster::shapefile可以正常读取并绘图。
已尝试的操作
使用rgdal包
rgdal::readOGR(dsn=path.expand("C:/Users/User/Documents/mémoire/pixels_de_reference_1"), layer="pixels_de_reference_1") rgdal::readOGR(dsn = "C:/Users/User/Documents/mémoire/pixels_de_reference_1.shp",layer = "pixels_de_reference_1") rgdal::readOGR(dsn = "C:/Users/User/Documents/mémoire/pixels_de_reference_1",layer = "pixels_de_reference_1") rgdal::readOGR(dsn = "C:/Users/User/Documents/mémoire",layer = "pixels_de_reference_1") rgdal::readOGR(dsn = "pixels_de_reference_1",layer = "pixels_de_reference_1") rgdal::readOGR(dsn = ".",layer = "pixels_de_reference_1") rgdal::readOGR("C:/Users/User/Documents/mémoire/pixels_de_reference_1.shp") rgdal::readOGR(dsn=path.expand("C:/Users/User/Documents/mémoire/pixels_de_reference_1.shp"))
返回错误:
Error in ogrInfo(dsn = dsn, layer = layer, encoding = encoding, use_iconv = use_iconv, :
Cannot open data source
使用terra包
f <- system.file("C:/Users/User/Documents/mémoire/pixels_de_reference_1.shp", package="terra") terra::vect(f)
返回错误:
Error: [vect] file does not exist:
打印f时返回空字符串"",但list.files显示目标文件夹包含所有Shapefile配套文件。
其他尝试
- 使用
sf::st_layers等方法时也出现相同错误 - 使用
raster::shapefile("C:/Users/User/Documents/mémoire/pixels_de_reference_1.shp")可正常读取并绘图
内容的提问来源于stack exchange,提问作者Muriel
相关产品推荐
相关产品推荐

