如何通过JSON从URL获取数据

时间:2013-11-20 23:08:54

标签: java android json

我从世界银行获得了一个URL,我被告知要从中获取数据。我检查了JSON api页面,但不知道从哪里开始。这是我正在练习的Android应用程序,我必须选择一些指标并通过该URL获取数据。我需要知道从哪里开始以及关于使用JSON的一些基本建议。所以作为一名程序员,如果你有一个获取数据的网址,你将如何开始?

String myDataString = "URL STRING"; 
    String dataString = new String();

2 个答案:

答案 0 :(得分:4)

我最近做了一个Android项目,从远程服务器上的json文件中获取数据。我用过这样的东西。

public void getData(String URL) {
    AsyncTask<String,String,String> getTask = new AsyncTask<String,String,String>(){
        @Override
        protected String doInBackground(String... params) {
            String response = "";
            try{
                URL url = new URL(params[0]);
                HttpURLConnection urlConnection = (HttpURLConnection)
                        url.openConnection();
                BufferedReader
                reader = new
                BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
                String line = "";
                while((line = reader.readLine()) != null){
                    response += line + "\n";
                }
            } catch (Exception e){
            }
            return response;
        }

        protected void onPostExecute(String result) {
            System.out.println(result);
        }
    };
    getTask.execute(URL);
}

因此,您希望执行AsyncTask以避免活动在等待响应时崩溃。它打开一个urlConnection,启动一个bufferedReader并在找到更多行时继续读取。完成后,它会将结果打印到控制台。

我发现这种方式似乎是从JSON获取数据到Android应用程序时最常见的。你如何操纵数据取决于你,有些使用字符串一些使用JSON对象..

答案 1 :(得分:1)

您可能希望从如何解析远程JSON的教程开始:Android JSON Parsing from URL – Example