JSON解析在Android的 - 从资源文件夹 [英] JSON Parsing in android - from resource folder
本文介绍了JSON解析在Android的 - 从资源文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在资源/原材料文件夹,在Eclipse中保存一个文本文件中。我这里显示该文件的内容:
{
分类:{
类别: [
{
cat_id:3,
cat_name:测试
},
{
cat_id:4,
cat_name:TEST1
},
{
cat_id:5,
cat_name:TEST2
},
{
cat_id:6,
cat_name:TEST3
}
]
}
}
我要分析此JSON数组。我怎样才能做到这一点?
任何人都可以请帮我吗?
在此先感谢。
解决方案
//获取数据从文本资源文件包含JSON数据。
InputStream中的InputStream = getResources()openRawResource(R.raw.json)。
ByteArrayOutputStream byteArrayOutputStream =新ByteArrayOutputStream();
INT点击率;
尝试 {
CTR = inputStream.read();
而(CTR!= - 1){
byteArrayOutputStream.write(CTR);
CTR = inputStream.read();
}
inputStream.close();
}赶上(IOException异常E){
e.printStackTrace();
}
Log.v(文本数据,byteArrayOutputStream.toString());
尝试 {
//解析数据到JSONObject的获取原始数据以JSON形式。
JSONObject的jObject =新的JSONObject(
byteArrayOutputStream.toString());
JSONObject的jObjectResult = jObject.getJSONObject(分类);
JSONArray jArray = jObjectResult.getJSONArray(类);
字符串cat_Id =;
字符串cat_name =;
ArrayList的<的String []>数据=新的ArrayList<的String []>();
的for(int i = 0; I< jArray.length();我++){
cat_Id = jArray.getJSONObject(ⅰ).getString(cat_id);
cat_name = jArray.getJSONObject(ⅰ).getString(cat_name);
Log.v(猫ID,cat_Id);
Log.v(猫名字,cat_name);
data.add(新的String [] {cat_Id,cat_name});
}
}赶上(例外五){
e.printStackTrace();
}
I've a kept one text file in res/raw folder in eclipse. I am showing here the content of that file:
{
"Categories": {
"Category": [
{
"cat_id": "3",
"cat_name": "test"
},
{
"cat_id": "4",
"cat_name": "test1"
},
{
"cat_id": "5",
"cat_name": "test2"
},
{
"cat_id": "6",
"cat_name": "test3"
}
]
}
}
I want to parse this JSON array. How can I do this?
Can anybody please help me??
Thanks in advance.
解决方案
//Get Data From Text Resource File Contains Json Data.
InputStream inputStream = getResources().openRawResource(R.raw.json);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
int ctr;
try {
ctr = inputStream.read();
while (ctr != -1) {
byteArrayOutputStream.write(ctr);
ctr = inputStream.read();
}
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
Log.v("Text Data", byteArrayOutputStream.toString());
try {
// Parse the data into jsonobject to get original data in form of json.
JSONObject jObject = new JSONObject(
byteArrayOutputStream.toString());
JSONObject jObjectResult = jObject.getJSONObject("Categories");
JSONArray jArray = jObjectResult.getJSONArray("Category");
String cat_Id = "";
String cat_name = "";
ArrayList<String[]> data = new ArrayList<String[]>();
for (int i = 0; i < jArray.length(); i++) {
cat_Id = jArray.getJSONObject(i).getString("cat_id");
cat_name = jArray.getJSONObject(i).getString("cat_name");
Log.v("Cat ID", cat_Id);
Log.v("Cat Name", cat_name);
data.add(new String[] { cat_Id, cat_name });
}
} catch (Exception e) {
e.printStackTrace();
}
这篇关于JSON解析在Android的 - 从资源文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文