簡體   English   中英

Android Studio onPostexecute結果為-

[英]Android Studio onPostexecute result is a �

您好,Android Studio上有以下代碼:

  private class ConsultarrDatos extends AsyncTask<String, Void, String> {
            @Override
            protected String doInBackground(String... urls) {
                try {
                    return downloadUrl(urls[0]);
                } catch (IOException e) {
                    return "Unable to retrieve web page. URL may be invalid.";
                }
            }
            @Override
          protected void onPostExecute(String result) {
            super.onPostExecute(result);
            System.out.println("onPostExecute:::::::::::::::::::::::::: " + result);
            String strJson= result;
            String data = "";
            try {
                JSONObject  jsonRootObject = new JSONObject(strJson);
                JSONArray jsonArray = jsonRootObject.optJSONArray("Employee");
                for(int i=0; i < jsonArray.length(); i++){
                    JSONObject jsonObject = jsonArray.getJSONObject(i);
                    int id = Integer.parseInt(jsonObject.optString("id").toString());
                    String name = jsonObject.optString("name").toString();
                    float salary = Float.parseFloat(jsonObject.optString("salary").toString());
                    data += "Node"+i+" : \n id= "+ id +" \n Name= "+ name +" \n Salary= "+ salary +" \n ";
                    etName.setText(name);
                }
            } catch (JSONException e) {e.printStackTrace();}    
        }
    }

關鍵是,當我從PHP文件中獲取數據時,println正在打印以下內容:

I / System.out:onPostExecute :::::::::::::::::::::::::: 04-03 18:25:50.798 18046-18046 / com.example.lorenzo .phpmysql I / System.out:

我的php代碼還可以,我沒有任何錯誤或類似的東西!

你知道為什么嗎?

非常感謝!

這是我的下載地址

private String downloadUrl(String myurl) throws IOException {
    Log.i("URL",""+myurl);
    myurl = myurl.replace(" ","%20");
    InputStream is = null;
    // Only display the first 500 characters of the retrieved
    // web page content.
    int len = 500;

    try {
        URL url = new URL(myurl);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setReadTimeout(10000 /* milliseconds */);
        conn.setConnectTimeout(15000 /* milliseconds */);
        conn.setRequestMethod("GET");
        conn.setDoInput(true);
        // Starts the query
        conn.connect();
        int response = conn.getResponseCode();
        Log.d("respuesta", "The response is: " + response);
        is = conn.getInputStream();



        // Convert the InputStream into a string
        String contentAsString = readIt(is, len);
        return contentAsString;

        // Makes sure that the InputStream is closed after the app is
        // finished using it.
    } finally {
        if (is != null) {
            is.close();
        }
    }
}

public String readIt(InputStream stream, int len) throws IOException, UnsupportedEncodingException {
    Reader reader = null;
    reader = new InputStreamReader(stream, "UTF-8");
    char[] buffer = new char[len];
    reader.read(buffer);

    return new String(buffer);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM