我有以下php文件....
mysql_connect("localhost","root","");
mysql_select_db("database_name");
$sql=mysql_query("select * from members");
while($row=mysql_fetch_assoc($sql)) $output[]=$row;
print(json_encode($output));
mysql_close();
?>
用这个我得到android中的所有数据以下是我的android内容,
BufferedReader reader = new BufferedReader(new InputStreamReader(
is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
String json = sb.toString();
我把json作为一个字符串。从android但现在我想在listview中使用该数据。我无法理解如何使用它。请给我一些想法或建议。
答案 0 :(得分:2)
从Json解析数据并将其保存在ArrayList中并将该arrayList设置为Listview。
您可以从String创建Json对象,如下所示。
JSONObject jsonObject = new JSONObject(json);
您可以从String创建Json Array对象,如下所示。
JSONArray ja = new JSONArray(json);
看看这个Tutorial。
答案 1 :(得分:1)
This链接帮助给你,这里详细解释了json数据解析。
答案 2 :(得分:1)
JSON package within Android为您提供所需的课程。
您可以使用以下数据轻松创建JSONObject:
JSONObject jsonObject = new JSONObject(json);
如果你有一个JSONArray,你可以对JSONArray类做同样的事情:
JSONArray jsonArray = new JSONArray(json);
只要它是有效的JSON,JSON的来源就不相关了。
您需要在Java中创建模型类,并将解析后的JSON数据提供给模型。然后可以使用它们在ListView中显示内容。
答案 3 :(得分:1)
我强烈推荐GSON库将你的json字符串序列化为java对象。您可以在http://code.google.com/p/google-gson/
获取GSON包一旦你将GSON添加到你的android构建路径,其余的都是微不足道的。从json字符串解析为java对象就像这样简单,
gsonObject.fromJson("JSON STRING", ObjectModel.class);
有关Gson api的更多信息,请点击此处