【问题标题】:Reading out a Json using java static error [duplicate]使用java静态错误读出Json [重复]
【发布时间】:2019-03-25 16:15:11
【问题描述】:

我想用java加载一个json gfile并将数据存储在变量中

我试过了,但总是报错

import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.io.*
...

        JsonParser parser = new JsonParser();
        try (FileReader reader = new FileReader("/opt/step-agent/conf/conf_internet_explorer.json"))
        {
            Object obj = JsonParser.parse(reader);
            JsonObject config = (JsonObject) obj;
            String driverPath = config.get("driverPath").getAsString();
            String HttpProxy = config.get("HttpProxy").getAsString();
            String SslProxy = config.get("SslProxy").getAsString();
            boolean proxy = (boolean) config.get("proxy");
        }catch (Exception e){
            e.printStackTrace();
        }

json

{
    "config": {
        "driverPath":"path/to/driver",
        "proxy":true,
        "HttpProxy":"http://proxy.local:80",
        "SslProxy":"http://proxy.local:80",
    }
}

错误:

non-static method parse(java.io.Reader) cannot be referenced from a static context

【问题讨论】:

    标签: java json filereader


    【解决方案1】:

    你把你的 var 和 Class 混在一起了。

    你应该写

    Object obj = parser.parse(reader);

    parser 是您的 var,其中包含一个 Instance of JsonParser,其方法为 parse()

    而不是

    Object obj = JsonParser.parse(reader);

    JsonParserClass JsonParser,它没有静态方法 parse()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-21
      • 2018-07-31
      • 2016-12-26
      • 1970-01-01
      • 2010-10-01
      • 1970-01-01
      • 2011-09-04
      • 1970-01-01
      相关资源
      最近更新 更多