jsonify返回两个值.一个是{"xx":["1","2"]},另一个是{"YY":"B"},怎么在android端得到他,并用gson来分别读取,请给出代码
时间: 2023-10-03 10:09:06 浏览: 53
android中JSON数据的读写方法
在 Android 中,你可以使用 `HttpURLConnection` 发送请求并获取 JSON 数据,然后使用 `Gson` 来将 JSON 数据转换为 Java 对象。假设你已经获取到了如下两个 JSON 字符串:
```json
{"xx":["1","2"]}
{"YY":"B"}
```
你可以定义两个 Java 类来表示这两个 JSON 数据:
```java
public class XX {
private List<String> xx;
public List<String> getXx() {
return xx;
}
public void setXx(List<String> xx) {
this.xx = xx;
}
}
public class YY {
private String YY;
public String getYY() {
return YY;
}
public void setYY(String YY) {
this.YY = YY;
}
}
```
然后在 Android 中使用以下代码来获取 JSON 数据并将其转换为 Java 对象:
```java
// 定义 URL 和请求方法
String urlString = "http://example.com/data";
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
// 获取 JSON 数据
InputStream inputStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder stringBuilder = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
stringBuilder.append(line);
}
// 解析 JSON 数据
Gson gson = new Gson();
XX xx = gson.fromJson(stringBuilder.toString(), XX.class);
// 获取另一个 JSON 数据并解析
inputStream = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(inputStream));
stringBuilder = new StringBuilder();
while ((line = reader.readLine()) != null) {
stringBuilder.append(line);
}
YY yy = gson.fromJson(stringBuilder.toString(), YY.class);
```
注意,以上代码仅作为演示目的,实际开发中需要在子线程中获取网络数据并更新 UI。
阅读全文