Php 如何在我的Android应用程序中解码JSON值?
大家好,我正在尝试将JSON值解码到我的Android应用程序中,但我不确定我的代码中有什么地方做错了 这是我的PHP文件:Php 如何在我的Android应用程序中解码JSON值?,php,android,json,Php,Android,Json,大家好,我正在尝试将JSON值解码到我的Android应用程序中,但我不确定我的代码中有什么地方做错了 这是我的PHP文件: <?php ... echo json_encode($mostrar_player); ... ?> 试一试 如果需要数组,请尝试 <?php echo json_encode(array("data" => $mostra_player)); ?> JSONObject json = n
<?php
...
echo json_encode($mostrar_player);
...
?>
试一试
如果需要数组,请尝试
<?php echo json_encode(array("data" => $mostra_player)); ?>
JSONObject json = new JSONObject(responsedata);
JSONArray jArray = json.getJSONArray("posts");
for (int i = 0; i < jArray.length(); i++) {
JSONObject e = jArray.getJSONObject(i);
JSONObject jObject = new JSONObject(e.getString("data"));
Log.d("yourdata", jObject.getString("yourdata"));
Log.d("moredata", jObject.getString("moredata"));
}
JSONObject json=新的JSONObject(responsedata);
JSONArray jArray=json.getJSONArray(“posts”);
for(int i=0;i
要实现这一点,您可以选择几个选项
我个人喜欢在Android中使用内置的JSON解析器
JSONObject jObject = new JSONObject(result);
您还可以使用Google的json解析库
另外,有关如何实际解析JSON和获取可在程序中使用的字符串的详细信息,请参见此链接。
我将尝试回答:-
[“1”、“Admin”、“123”、“Adm”、“messages”、“0”]
,这显然是一个jsonarray,但您在android中解析为jsonobjectJSONArray jArray=new JSONArray(json_str)
String id=jArray.getString(0);
String admin=jArray.getString(1);
.
.
.
希望对你有帮助。。。如果我错了,请纠正我:)
thx在程序到达行Log.i(“-RESPOSTA-”,Conn.response)后;它有bug,我得到了如下结果:java.lang.IllegalStateException:无法执行Activity的方法我正在尝试将这个[“1”、“Admin”、“123”、“Adm”、“messages”、“0”]放入我可以管理的数组中:您正在主线程中运行HTTP请求,Android不允许这样做。Bob,看起来他已经在使用JSON库了,否则他就不会有像getJsonArray()这样的方法了。它似乎是json.org解析器,这意味着我的答案是正确地将json数据从php解析为java!成功了!:你现在是我的php返回给我这个:{“0”:“1”,“1”:“Admin”,“2”:“1234”,“3”:“Adm”,“4”:“message”,“5”:“0”}带有0,1,2,3,4 e5,我相信这是每列的数字,所以我更改了这行:String yourdata=obj.getString(“1”);要获得第二列“ADMIN”^ ^,如果您想在JSON中使用数组,则应该考虑尝试JSONYNECODER(数组($MOSTRAIPER))。如果我的回答对你有帮助,别忘了投赞成票。谢谢如果我使用它,它会返回我{“data”:null}D:看看它是什么:$query=“SELECT*FROM chat”;$res=mysql\u query($query);$mostrar\u player=mysql\u fetch\u行($res);echo json_编码(数组(“数据”=>$mostra_播放器));修好了。它是mysql_fetch_数组,用来获得一个合适的数组,而不是一行。嘿,这也很有效,事实上看起来更容易。
<?php echo json_encode(array("data" => $mostra_player)); ?>
JSONObject json = new JSONObject(responsedata);
JSONArray jArray = json.getJSONArray("posts");
for (int i = 0; i < jArray.length(); i++) {
JSONObject e = jArray.getJSONObject(i);
JSONObject jObject = new JSONObject(e.getString("data"));
Log.d("yourdata", jObject.getString("yourdata"));
Log.d("moredata", jObject.getString("moredata"));
}
JSONObject jObject = new JSONObject(result);
JSONArray jArray=new JSONArray(json_str)
String id=jArray.getString(0);
String admin=jArray.getString(1);
.
.
.