我从Web服务返回:
[{"id_professor":"1","nome":"Ana Paula","email":"[email protected]"},{"id_professor":"2","nome":"Beatriz de Souza","email":"[email protected]"},{"id_professor":"3","nome":"Carlos da Silva","email":"[email protected]"},{"id_professor":"4","nome":"Dion\u00edsio Mathias","email":"[email protected]"},{"id_professor":"5","nome":"Eduardo Paiva","email":"[email protected]"}]
我喜欢读这个jsonArray
我有这个代码:
URL endWeb = new URL("http://editalmais.com.br/concurso/blank_json_professor_curso/");
HttpURLConnection con = (HttpURLConnection) endWeb.openConnection();
con.setReadTimeout(10000);
con.setConnectTimeout(15000);
con.setDoInput(true);
con.setDoOutput(false);
con.setRequestMethod("GET");
int respCon = con.getResponseCode();
if ( respCon < HttpURLConnection.HTTP_BAD_REQUEST){
Log.i("conexao", "Realizada com sucesso");
strings = new ArrayList<String>();
InputStream is = con.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
StringBuilder sb = new StringBuilder();
String line = null;
while ( ( line = reader.readLine()) != null){
sb.append(line);
}
is.close();
直到这里没关系...但我没有得到价值观。
从api获得响应并解析json之后如下所示,只需将响应作为字符串传递给下面的方法:
public ArrayList<Example> getList(String json){
ArrayList<Example> arrayList = new ArrayList<>();
try {
JSONArray jsonArray = new JSONArray(json);
for (int count = 0; count<jsonArray.length(); count++){
Example example = new Example();
JSONObject jsonObject = jsonArray.getJSONObject(count);
example.setIdProfessor(jsonObject.getString("id_professor"));
example.setEmail(jsonObject.getString("email"));
example.setNome(jsonObject.getString("nome"));
arrayList.add(example);
}
} catch (JSONException e) {
e.printStackTrace();
}
return arrayList;
}
example.Java
public class Example {
private String idProfessor;
private String nome;
private String email;
public String getIdProfessor() {
return idProfessor;
}
public void setIdProfessor(String idProfessor) {
this.idProfessor = idProfessor;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}