java - Gson没有在java中解析JSON
问题描述
我正在尝试使用 GSON 库解析包含 JSON 信息的字符串。我从一个工作正常的 HttpRequest 中得到这个字符串(我可以在控制台中打印它并且工作正常)。问题似乎来自这一行:
JsonObject jsonObject = new Gson().fromJson(inputLine,JsonObject.class).getAsJsonObject();
顺便说一句,字符串在“inputLine”中。编译器在线程“AWT-EventQueue-0”java.lang.NoClassDefFoundError: com/google/gson/Gson 中说异常并指向该行。这是我正在尝试阅读的 JSON,如果这有帮助的话:
{
"meta":{
"symbol": "AAPL",
"interval": "1min",
"currency": "USD",
"exchange_timezone": "America/New_York",
"exchange": "NASDAQ",
"type": "Common Stock"
},
"values":[
{
"datetime":"2019-08-09 15:59:00",
"open":"200.93999",
"high":"201.25599",
"low":"200.85199",
"close":"201.05000",
"volume":"472287"
},
{
"datetime":"2019-08-09 15:58:00",
"open":"201.02999",
"high":"201.13000",
"low":"200.83999",
"close":"200.93499",
"volume":"209854"
},
{
"datetime":"2019-08-09 15:57:00",
"open":"201.02000",
"high":"201.07000",
"low":"200.91000",
"close":"201.02000",
"volume":"149032"
},
{
"datetime":"2019-08-09 15:56:00",
"open":"201.11999",
"high":"201.25999",
"low":"201.03340",
"close":"201.03340",
"volume":"178892"
},
{
"datetime":"2019-08-09 15:55:00",
"open":"201.75999",
"high":"201.75999",
"low":"201.07000",
"close":"201.13000",
"volume":"372886"
},
{...}
],
"status":"ok"
}
我想要数组“值”中每个对象的接近值。我试过了,但是,再次,无法弄清楚这里的错误是什么
XYSeries jsonSerie = new XYSeries("Tiempo");
JsonObject jsonObject = new Gson().fromJson(inputLine,JsonObject.class).getAsJsonObject();
JsonArray jsonArr = jsonObject.getAsJsonArray("values");
int i = 0;
do{
JsonObject jObj = jsonArr.get(i).getAsJsonObject();
JsonElement jElem = jObj.get("close");
BigDecimal close = jElem.getAsBigDecimal();
jsonSerie.add(i, close);
i++;
}
while(i < jsonArr.size());
oDataSet = new XYSeriesCollection();
oDataSet.addSeries(jsonSerie);
关于如何做到这一点或错误在哪里的任何想法?(哦,我也在使用 JFreeChart 和 JCommon 库来绘制这个值,这就是 XY 东西的来源)
解决方案
推荐阅读
- javascript - 反应选择下拉列表中的事件传播和多状态变化
- vba - 使复选框出现和消失
- nvidia - Nvidia vGPU 软件是否支持 Docker 容器?
- latex - 运行 C:/MIKTEX~1.9/miktex/bin/x64/pdflatex.exe 时出错(退出代码 1)
- php - 当用户点击菜单选项时重定向用户
- python - 有没有办法让列表中的值浮动然后对它们进行排序?
- android - Flutter google_maps_places 搜索后不显示地点
- apache-spark - 在 Dataproc 上使用 Spark 进行跨账户 GCS 访问
- android - 通过@Field 进行改造发布使值成为一个数组
- javascript - 我找不到为什么我不能将数据传递给道具