我卡住了,我在Sd卡上有一个json文本文件,我需要从SD卡读取一个json文件,并将数据显示在我的textview中。
这是我的json文本文件名是textarabics.json:
{
"data": [
{
"id": "1",
"title": "Farhan Shah",
"duration": 10,
},
{
"id": "2",
"title": "Noman Shah",
"duration": 10,
},
{
"id": "3",
"title": "Ahmad Shah",
"duration": 8,
},
{
"id": "4",
"title": "Mohsin Shah",
"duration": 10,
},
{
"id": "5",
"title": "Haris Shah",
"duration": 5,
}
]
}
我想在我的textview中显示“title”,而“duration”是secondes的数量,例如当第一个“title”显示在我的textview中时,它将在屏幕上显示10秒,之后第二个文本显示x秒等等。在我的xml文件中,我只有一个textview.any idear和帮助将非常感谢..谢谢您的宝贵回复提前。
答案 0 :(得分:1)
你可以这样做:
1- Read file
2-获取文本并解析它:
JSONObject json = new JSONObject(text);
JSONArray ar = new JSONArray(json.getString("data"));
for (int i = 0; i < ar.length(); i++) {
try {
JSONObject jpost = ar.getJSONObject(i);
// Pulling items from the array
int id = jpost.getInteger("id");
String title = jpost.getString("title");
int duration = jpost.getInteger("duration");
// DO whatever
//Ex.
//textView.setText(title);
//if you use "Thread", you can put Thread.sleep(duration*1000);
} catch (JSONException e) {
// Oops
e.printStackTrace();
}
}
希望这会有所帮助
注意:您的json文件中可能会出现错误cause there is comma after duration