通过android / java中的远程URL获取json标记值

时间:2015-07-21 23:57:30

标签: java android json

嗨,我有一个简单的json,我存储在我的网页中(只有纯json):

http://example.com/file.json

{
    "data": {
        "message": "This is a text",
    },
}

现在我想用android解析它并获取消息值:

在PHP中就是这么简单:

$json = file_get_contents('http://example.com/file.json');
$obj = json_decode($json);
echo $obj->message;

但是我该如何为Android做到这一点?

我尝试编写代码:

JSONObject json = new JSONObject("http://example.com/file.json")
JSONObject data = json.getJSONObject("data");
String message = data.getString("message");

但我知道这是错的

1 个答案:

答案 0 :(得分:1)

JSONObject json = new JSONObject(" http://example.com/file.json") 错误

从远程网站读取JSON文件。

示例:

URL url = new URL("http://example.com/file.json");
JSONTokener tokener = new JSONTokener(url.openStream());
JSONObject obj = new JSONObject(tokener);
JSONObject data = obj.getJSONObject("data");
String message = data.getString("message");

JSONTokener javadoc

依赖关系

<强> JSON:

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20090211</version>
</dependency>

杰克逊:

  <dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-core-asl</artifactId>
    <version>1.9.13</version>
</dependency>