我有以下JSON文本.如何可以解析它来获得pageName
,pagePic
,post_id
,等?
{
"pageInfo": {
"pageName": "abc",
"pagePic": "http://example.com/content.jpg"
},
"posts": [
{
"post_id": "123456789012_123456789012",
"actor_id": "1234567890",
"picOfPersonWhoPosted": "http://example.com/photo.jpg",
"nameOfPersonWhoPosted": "Jane Doe",
"message": "Sounds cool. Can't wait to see it!",
"likesCount": "2",
"comments": [],
"timeOfPost": "1234567890"
}
]
}
Run Code Online (Sandbox Code Playgroud) public static void parseProfilesJson(String the_json){
try {
JSONObject myjson = new JSONObject(the_json);
JSONArray nameArray = myjson.names();
JSONArray valArray = myjson.toJSONArray(nameArray);
for(int i=0;i<valArray.length();i++)
{
String p = nameArray.getString(i) + "," + ValArray.getString(i);
Log.i("p",p);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,此示例代码将打印出JSON 的KEY,然后是JSONS的VALUES.
它将打印配置文件,如果json是这样的约翰:
{'profiles':'john'}
Run Code Online (Sandbox Code Playgroud)
这很酷.那很好,因为我可以使用这些变量.但是,如果JSON是这样的:
{'profiles': [{'name':'john', 'age': 44}, {'name':'Alex','age':11}]}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,整个值将是数组.基本上,我只想抓住那个数组(在这种情况下是"值")......然后把它变成JAVA可以使用的实际数组.我怎样才能做到这一点?谢谢.
简单的情况 -
我试过gson,来自json.org的软件包,但似乎无法与之相提并论.
有人可以在Java中提供一个关于如何获取文件的清晰样本,阅读它,最后使用json objec我可以从中获取键/值对.
考虑一下:
private void runThroughJson(JsonObject jsonObject) {
for (final Entry<String, JsonElement> entry : jsonObject.entrySet()) {
final String key = entry.getKey();
final JsonElement value = entry.getValue();
System.out.println(key + " - " + value);
if (value.isJsonObject()) {
runThroughJson(value.getAsJsonObject());
} else {
int ix = value.getAsString().indexOf('[');
int ig = value.getAsString().lastIndexOf(']');
System.out.println(ix);
System.out.println(ig);
String a = value.getAsString().substring(ix, ig);
JsonElement jsonElement = parser.parse(a);
runThroughJson(jsonElement.getAsJsonObject());
}
}
}
Run Code Online (Sandbox Code Playgroud)
从逻辑上讲,它似乎没问题,但是,我得到一个例外:
Exception in thread "main" java.lang.IllegalStateException
at com.google.gson.JsonArray.getAsString(JsonArray.java:133)
at com.cme.esg.bk.TryGson.runThroughJson(TryGson.java:46)
at …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Chrome浏览器用Webdriver编写测试,我想下载一些文件,当我点击下载链接时,文件会自动下载到下载文件夹.我想知道是否有办法找出下载文件夹的当前路径是什么(Win/Linux)是否有一些配置文件,Chrome保持设置?
Thans