如何从Gson链接获取数据

时间:2014-03-01 17:21:51

标签: java json gson

这是我的代码:

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import com.google.gson.*;

public class GsonDecode {

    public static void main (String[] args) throws IOException{

        String sURL = "http://pubapi.cryptsy.com/api.php?method=orderdata"; //just a string

        // Connect to the URL using java's native library
        URL url = new URL(sURL);
        HttpURLConnection request = (HttpURLConnection) url.openConnection();
        request.connect();

        // Convert to a JSON object to print data
        JsonParser jp = new JsonParser(); //from gson
        JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent())); //convert the input stream to a json element
        JsonElement jsonElement = root.getAsJsonObject().get("return");

    }
}

我需要从这个JSON链接获得每个市场的“标签”。所有其他信息都是不必要的

最简单的方法是什么?

1 个答案:

答案 0 :(得分:1)

除非API是为此而设计的,否则你不能这样做。向API开发人员询问,如果它是实施者,他们将为此提供文档或其他URL。

或者你可以下载整个json并获得这样的所有名称

JsonElement jsonElement = root.getAsJsonObject().get("return");
Set<Map.Entry<String,JsonElement>> entries = jsonElement.getAsJsonObject().entrySet();
for(Map.Entry<String,JsonElement> entry:entries) {
   System.out.println(entry.getKey());  //get keys
}