-1

我的布局中有 2 个带有 id (matricula, nome) 的 TextView,我需要从这个json 请求中获取这些值。

我在进行 json 请求和获取值时都遇到了困难,这是一个示例,我将如何在 php 和 jquery 中执行以下操作:

PHP

$alunos = json_decode("let's pretend json data is here");

echo "Matricula: " . $alunos['Aluno']['matricula'];
echo "Nome: " . $alunos['Aluno']['nome'];

jQuery

var alunos = $.parseJSON("let's pretend json data is here");

console.log("Matricula: " + alunos.aluno.matricula);
console.log("Nome: " + alunos.aluno.nome);

帮助:
Aluno = Student
Matricula = Student id
Nome = name

我在这里阅读了一些关于解析 json 的答案,但我承认,这很难理解。

4

1 回答 1

1

在 Java 中也很容易(我省略了所有错误处理以专注于主要流程,请自行添加):

import org.json.JSONObject;
import java.net.URL;
import java.net.HttpURLConnection;
import java.io.InputStream;
import java.io.InputStreamReader;

...

private String readString(Reader r) throws IOException {
    char[] buffer = new char[4096];
    StringBuilder sb = new StringBuilder(1024);
    int len;
    while ((len = r.read(buffer)) > 0) {
        sb.append(buffer, 0, len);
    }
    return sb.toString();
}

...

// fetch the content from the URL
URL url = new URL("http://..."); // add URL here
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStreamReader in = new InputStreamReader(conn.getInputStream(), "UTF-8");
String jsonString = readString(in);
in.close();
conn.disconnect();

// parse it and extract values
JSONObject student = new JSONObject(jsonString);
String id = student.getJSONObject("Aluno").getString("matricula");
String name = student.getJSONObject("Aluno").getString("nome");

有关详细信息,请参阅文档

于 2013-08-18T06:21:33.363 回答