【发布时间】:2017-08-20 12:02:36
【问题描述】:
我正在尝试使用 geotools 打开从http://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-countries/ 下载的 .shp 文件。我的代码如下所示:
File file = new File("ne_10m_admin_0_countries.shp");
try{
Map<String, URL> map = new HashMap<String, URL>();
map.put("url", file.toURI().toURL());
DataStore dataStore = DataStoreFinder.getDataStore(map);
System.out.println(DataStoreFinder.getDataStore(map));
System.out.println(map);
SimpleFeatureSource featureSource = dataStore.getFeatureSource(dataStore.getTypeNames()[0]);
SimpleFeatureCollection collection = featureSource.getFeatures();
ReferencedEnvelope env = collection.getBounds();
double left = env.getMinX();
double right = env.getMaxX();
double top = env.getMaxY();
double bottom = env.getMinY();
System.out.println(left+" "+right);
}catch(Exception e){
System.out.println("ahoj" +e.getMessage());
}
DataStoreFinder.getDataStore() 方法返回 null,这就是问题所在。你有什么想法我做错了什么吗?
我想打开并使用这个 shapefile 来获取国家边界的坐标。
问题是我没有包含其他需要的 jar 文件。它现在正在工作。
【问题讨论】: