作為一個Android開發初學者,好不容易找到解決方法,跟大家分享一下,
其實很簡單,只要保持服務器上的文件(date2.json)與軟件的編碼方式一樣就行。
我用的Android Studio是utf-8,所以在服務器文件(date2.json)編碼的方式也設值為utf-8;
新建一個文本文檔,將寫入內容,將文件另存為到服務器文件夾下的htdocs文件夾下,將.txt改為.json,編碼方式為utf-8
直接保存就完成了
運行程序結果:
//發送請求獲取json文件 private void sendRequestByOkHttp() { new Thread(new Runnable() { @Override public void run() { try { OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("http://10.0.2.2:88/data2.json") //我是在本地搭建了一個服務器,date2.json .build(); Response response = client.newCall(request).execute(); String responseData = response.body().string(); parseJSONObject(responseData); } catch (Exception e) { e.printStackTrace(); } } }).start(); } private void parseJSONObject(String json) { try { JSONArray jsonArray = new JSONArray(json); for (int i = 0; i < jsonArray.length(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String id = jsonObject.getString("id"); String name = jsonObject.getString("name"); Log.d("MainActivity", "name是" + name); Log.d("MainActivity", "id是" + id); } } catch (JSONException e) { e.printStackTrace(); } }
需要完整代碼的可以評論找我要