Java的JSON API。JsonParser到JSONObject和JSONArray
谢谢你看 我正在解决一个问题,我需要能够将Json放入内存,并能够“导航”键 我能够使用Json.createParser()方法并使用args中的FileReader在我的系统中获取文件。我的问题是,从这里开始,我还没有办法将JsonParser对象带到JsonObject来读取其中的值 我正在使用这个软件包 我希望能够使用JsonObject和JsonArray轻松地浏览Json数据,但要使用JsonParser对象 谢谢你的时间。好的,我想好了 以下是json的外观:Java的JSON API。JsonParser到JSONObject和JSONArray,java,json,javax.json,Java,Json,Javax.json,谢谢你看 我正在解决一个问题,我需要能够将Json放入内存,并能够“导航”键 我能够使用Json.createParser()方法并使用args中的FileReader在我的系统中获取文件。我的问题是,从这里开始,我还没有办法将JsonParser对象带到JsonObject来读取其中的值 我正在使用这个软件包 我希望能够使用JsonObject和JsonArray轻松地浏览Json数据,但要使用JsonParser对象 谢谢你的时间。好的,我想好了 以下是json的外观: { "nam
{
"name": "Changed name",
"Items":
[
{"item1": "the_fist_item"},
{"item2": "the_second_item"},
{"item3": "the_second_item"}
]
}
然后在java内部
import java.io.FileReader;
import javax.json.*;
public class JsonTester
{
public static void main(String[] args)
{
try
{
JsonReader json_file = Json.createReader(new FileReader("***the directory to the json file***"));
JsonObject json_object = json_file.readObject();
String the_second_item = json_object.getJsonArray("Items").getJsonObject(1).get("item2").toString();
System.out.println(the_second_item);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
我试图完成的导航部分在第二项上。这是所有的get()方法,可以深入Json文件以获得我想要的特定值
感谢David Ehrmann的帮助。你说的“导航”钥匙是什么意思?JsonParser是相当低级的。它允许您将JSON解释为类型化标记流。如果你只想把整个树读入内存,你可能会对JsonReader更感兴趣。我想我的意思是,我通常想深入研究对象数组中对象的对象lol。我要看看JsonReader谢谢。