【发布时间】:2014-02-06 02:20:31
【问题描述】:
我正在使用 Processing 2.1,这是一种建立在 Java 之上的语言,允许创建可视化。目前我正在尝试读取 geoJSON 文件并在地图上显示此信息。
我在 Processing.org 网站提供的 IDE 中进行编码。从某种意义上说,它非常原始,它不具备调试代码的能力。它会返回错误,但我无法进入我的代码来找出我的问题。
我目前收到此错误:NullPointerException
就是这样,我被告知除了它出现的那一行之外没有别的了。
List<Feature> counties = GeoJSONReader.loadData(this, "ireland.geo.json");
我不明白为什么我会得到它。我要读取的文件存在。谁能帮我解决这个问题?
下面是我的完整代码:
UnfoldingMap map;
List<Marker>countyMarkers;
List<Marker>countyMarkers2;
color c1 = color(204, 153, 0);
void setup() {
size(800, 600);
smooth();
//Map
map = new UnfoldingMap(this);
MapUtils.createDefaultEventDispatcher(this, map);
List<Feature> counties = GeoJSONReader.loadData(this, "ireland.geo.json");
countyMarkers = MapUtils.createSimpleMarkers(counties);
map.addMarkers(countyMarkers);
}
void draw() {
map.draw();
for (int i = 0; i < countyMarkers.size(); i++) {
Marker county = countyMarkers.get(i);
county.setColor(c1);
if (county.isInside(map, mouseX, mouseY)) {
county.draw(map);
HashMap countyProps = county.getProperties();
String countyName = countyProps.get("city").toString();
println(countyName);
}
}
}
【问题讨论】:
-
向我们展示
loadData的作用。 -
它由我正在使用的库提供。这个方法不是我写的。该方法的文档在这里unfoldingmaps.org/javadoc/de/fhpotsdam/unfolding/data/…,它基本上只是“解析 GeoJSON 字符串并为它们创建特征。”
-
尝试提供文件的绝对路径。
-
我会尝试,但有趣的是,我在这个目录中有许多 geoJSON 文件,当我尝试将它们加载到程序中时没有生成 NPE,只有这个特定的。
-
您可以在
jsonlint.com等网站上查看 JSON。
标签: java nullpointerexception processing geojson