java解码json帮助(使用json简单)
我知道要求制作东西是不好的,但这是我第一次被java绊倒。最近我开始学习java,对于我的小工具,我需要阅读这个json字符串 有半天,我在搜索,试图让事情变得简单 但我不能这样做。 请帮忙 例如,仅检索字符串的steamid和communityvisibilitystatejava解码json帮助(使用json简单),java,json,decode,json-simple,Java,Json,Decode,Json Simple,我知道要求制作东西是不好的,但这是我第一次被java绊倒。最近我开始学习java,对于我的小工具,我需要阅读这个json字符串 有半天,我在搜索,试图让事情变得简单 但我不能这样做。 请帮忙 例如,仅检索字符串的steamid和communityvisibilitystate String steamid = ...; String communityvisibilitystate = ...; 如果您有更好的解决方案,不使用json,请简单发布 { "response": { "pl
String steamid = ...;
String communityvisibilitystate = ...;
如果您有更好的解决方案,不使用json,请简单发布
{
"response": {
"players": [
{
"steamid": "76561198777777777",
"communityvisibilitystate": 3,
"profilestate": 1,
"personaname": "777777",
"lastlogoff": 7777777777,
"profileurl": "http://steamcommunity.com/profiles/76561198777777777/",
"avatar": "http://media.steampowered.com/steamcommunity/public/images/avatars/16/777777777.jpg",
"avatarmedium": "http://media.steampowered.com/steamcommunity/public/images/avatars/16/777777777_medium.jpg",
"avatarfull": "http://media.steampowered.com/steamcommunity/public/images/avatars/16/777777777_full.jpg",
"personastate": 0,
"primaryclanid": "103582797777777777",
"timecreated": 7777777777
}
]
}
}
你可以这样做:
Object obj = parser.parse(new FileReader("c:\\test.json"));
JSONObject jsonObject = (JSONObject) obj;
String steamid= (String) jsonObject.get("steamid");
System.out.println(steamid);
但我建议使用。这要简单得多,而且有很好的文档记录。1:您的完整响应是一个JSON对象 2:如果任何元素写为
"some key name " : { " some value " }
这是一个JSON对象
3:如果有任何元素像
"some key name " : " some value "
"some key name " : [ " some value " ]
这是json对象内部的值,可以通过
jsonObject.getString("key name")
4:如果有任何元素像
"some key name " : " some value "
"some key name " : [ " some value " ]
然后这是一个JSON数组,您必须将其放入JSON数组中,然后通过
jsonObject.getJSONARRAY("key name for JSON ARRAY IN RESPONSE ")
然后您可以通过
`jsonArrayObj.get(0);`
创建一个与json响应结构完全相同的类结果(例如,请参见下面的结构)
看完你的问题。你似乎有两个问题 要在线生成JSON,我建议您访问此网站。这将生成所需的JSON 要解析json,请参阅以下代码 假设您已将此JSON响应放入字符串变量result中
String result=“yourresponse”;
试一试{
JSONObject对象=新的JSONObject(结果);
JSONObject object1=object.getJSONObject(“响应”);
JSONArray arr=object1.getJSONArray(“玩家”);
对于(int i=0;i
您应该试试谷歌的gson,这里是如何使用它的简单指南
String result = "yourresponse";
try {
JSONObject object = new JSONObject(result);
JSONObject object1 = object.getJSONObject("response");
JSONArray arr = object1.getJSONArray("Players");
for (int i = 0; i < arr.length(); i++)
{
JSONObject object3 = arr.getJSONObject(i);
String steamId = object3.getString("steamid");
String communityvisibilitystate = object3
.getString("communityvisibilitystate");
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}