java - 如何通过 JSON 从 URL 获取数据

标签 java android json

<分区>

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

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

最佳答案

我最近做了一个 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 来避免 Activity 在等待响应时崩溃。它打开一个 urlConnection,启动一个 bufferedReader 并在找到更多行时继续读取。完成后,它将结果打印到控制台。

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

关于java - 如何通过 JSON 从 URL 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20109079/

相关文章:

android - 为什么我会从此方法中获得重复的记录?

python - flask wtforms填充下拉列表

java - ProcessBuilder导致无法运行程序

java - 找不到类,未找到类定义

java - 在 Java 中打印 OO 表达式树

json - Pandas:将 JSON 转换为 Pandas Dataframe

javascript - 对两个 ajax() 请求使用相同的回调会产生 "parsererror"

java - 如何从方法的输入生成 sql

android - BaseExpandableListAdapter - 为没有子项的组项禁用 onclick

android - onAnimationEnd() 调用了两次