如何从Java中读取JSON文件?

时间:2015-11-28 10:14:05

标签: java json file

我已经阅读了其他一些有关此问题,但它们似乎对我没有帮助。 正如标题所说,我想知道如何使用Java从.json文件中读取。 例如。我希望我的程序读取一个布尔值。 (这就是我想要的。)

我真的希望你能帮助我。如果需要,我可以使用json-simple-1.1.1。

到目前为止我发现了什么(这不起作用):

    String str = "Name";
    JSONObject obj = new JSONObject();
    String n = (String) obj.get("Name");
    if (!n.equals("true")) {

    } else
    if (n.equals("true")) {
        ButtonsShow = true;
    } else if (n.equals("false")) {
        ButtonsShow = false;
    }

Click to view the .Json file

1 个答案:

答案 0 :(得分:0)

你试试看:

  import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class JsonSimpleExample {
     public static void main(String[] args) {

    JSONParser parser = new JSONParser();

    try {

        Object obj = parser.parse(new FileReader("c:\\test.json"));

        JSONObject jsonObject = (JSONObject) obj;

        String name = (String) jsonObject.get("name");
        System.out.println(name);

        long age = (Long) jsonObject.get("age");
        System.out.println(age);

        // loop array
        JSONArray msg = (JSONArray) jsonObject.get("messages");
        Iterator<String> iterator = msg.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }

    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } catch (ParseException e) {
        e.printStackTrace();
    }

     }

}