gpt4 book ai didi

java - 我无法从 wales-latest.osm.pbf 文件中提取 border_type=city

转载 作者:行者123 更新时间:2023-12-01 04:19:27 24 4
gpt4 key购买 nike

我从 http://download.geofabrik.de/europe/great-britain.html 获得了 wales-latest.osm.pbf 。这是威尔士的 OSM 文件。如果我导出http://www.openstreetmap.org/#map=19/51.50387/-3.08467作为 XML,我得到键:值对 border_type:city。

当我使用以下代码解析 wales-latest.osm.pbf 文件时,它找不到任何 border_type:city 对:

@Override
protected void parseWays(List<Way> ways) {
for (Way w : ways) {
StringBuilder sb = new StringBuilder();
sb.append(" Nodes: ");
long lastRef = 0;
for (Long ref : w.getRefsList()) {
lastRef+= ref;
sb.append(lastRef).append(" ");
}
sb.append("\n Key=value pairs: ");
boolean isCity=false;
for (int i=0 ; i<w.getKeysCount() ; i++) {
isCity=isCity||(getStringById(w.getKeys(i)).equals("border_type")&&(getStringById(w.getVals(i)).equals("city")));
sb.append(getStringById(w.getKeys(i))).append("=")
.append(getStringById(w.getVals(i))).append(" ");
}

if (!isCity){
continue;
}

System.out.println(sb.toString());
}
}

如果我将“city”替换为“territorial”,那么它就可以找到匹配项。

pbfs 中是否不存在 border_type:city ?这仅与 geofabrik.de pbfs 有关吗?我也尝试过苏格兰 osm.pbf 文件,但也不起作用。

最佳答案

一个问题是你只看方法,不看关系。以 Cardiff 为例。它位于威尔士,标记为 border_type=city,但因为您只是检查方式,您的代码将找不到它。

您想要解析方法和关系。

关于java - 我无法从 wales-latest.osm.pbf 文件中提取 border_type=city,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19098489/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com