android如何解析json
❶ android 获取了json 类型的数据,怎么解析
JSONObject dataJson=new JSONObject("你的Json数据“);
JSONObject response=dataJson.getJSONObject("response");
JSONArray data=response.getJSONArray("data");
JSONObject info=data.getJSONObject(0);
String province=info.getString("province");
String city=info.getString("city");
String district=info.getString("district");
String address=info.getString("address");
System.out.println(province+city+district+address);
❷ Android 解析这样的json数据怎么解析
先将字符串转换为json对象或数组
这段字符串中以]结尾为数组
JSonArray array = new JSonArray
遍历这个数组获得对应的对象
for(int i = 0 ; i < array.length() ;i++){
JSONObject obj = array.getJSONObject(i);
}
❸ android怎么读取外部json文件
java">比如说读取sd卡里的
privatestaticStringSDCardPATH=Environment.getExternalStorageDirectory()+"/";
/**
*读取文本文件
*
*@paramfilePath
*@return
*/
(StringfilePath){
StringBuildersb=newStringBuilder();
try{
Filefile=newFile(SDCardPATH+filePath);
InputStreamin=null;
in=newFileInputStream(file);
inttempbyte;
while((tempbyte=in.read())!=-1){
sb.append((char)tempbyte);
}
in.close();
}catch(Exceptione){
e.printStackTrace();
}
returnsb.toString();
}
然后你就可以进行你的解析json了。
❹ android怎么看json数据格式
JSON有两种表示结构,对象和数组。
对象结构以”{”大括号开始,以”}”大括号结束。中间部分由0或多个以”,”分隔的”key(关键字)/value(值)”对构成,关键字和值之间以”:”分隔,语法结构如下
{
key1:value1,
key2:value2,
}其中关键字是字符串,而值可以是字符串,数值,true,false,null,对象或数组
数组结构以”[”开始,”]”结束。中间由0或多个以”,”分隔的值列表组成,语法结构如下
[
{
key1:value1,
key2:value2
},
{
key3:value3,
key4:value4
}
]
❺ android如何从一个网络接口中获得json数据,并且进行解析呢
你可以用jsonsmart来解析: JSONValue.parseStrict(返回的数据) 进行解析,之后再根据json字段拿数据
❻ android 解析json用那个包里面的方法比较好呢
android 解析json还有用Google出品的Gson比较好,具体步骤为:
1、首先,从 code.google.com/p/google-gson/downloads/list下载GsonAPI:
google-gson-1.7.1-release.zip 把gson-1.7.jar 到libs(项目根目录新建一个libs文件夹)中。 可以使用以下两种方法解析JSON数据,通过获取JsonReader对象解析JSON数据。
代码如下:
String jsonData = "[{\"username\":\"arthinking\",\"userId\":001},{\"username\":\"Jason\",\"userId\":002}]";
try{
JsonReader reader = new JsonReader(new StringReader(jsonData));
reader.beginArray();
while(reader.hasNext()){
reader.beginObject();
while(reader.hasNext()){
String tagName = reader.nextName();
if(tagName.equals("username")){
System.out.println(reader.nextString());
}
else if(tagName.equals("userId")){
System.out.println(reader.nextString());
}
}
reader.endObject();
}
reader.endArray();
}
catch(Exception e){
e.printStackTrace();
}
2、使用Gson对象获取User对象数据进行相应的操作:
代码如下:
Type listType = new TypeToken<LinkedList<User>>(){}.getType();
Gson gson = new Gson();
LinkedList<User> users = gson.fromJson(jsonData, listType);
for (Iterator iterator = users.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
System.out.println(user.getUsername());
System.out.println(user.getUserId());
}
3、如果要处理的JSON字符串只包含一个JSON对象,则可以直接使用fromJson获取一个User对象:
代码如下:
String jsonData = "{\"username\":\"arthinking\",\"userId\":001}";
Gson gson = new Gson();
User user = gson.fromJson(jsonData, User.class);
System.out.println(user.getUsername());
System.out.println(user.getUserId());
❼ android怎么解析json文件
你好,我试过了,这样能取到你要的结果:
用的gson-2.2.4.jar包,你应该有吧,没有网络搜下去下个就好了。
importcom.google.gson.JsonArray;
importcom.google.gson.JsonObject;
importcom.google.gson.JsonParser;
publicclassMyTest{
publicstaticvoidmain(String[]args){
Stringjson="{'resultcode':'200','reason':'ReturnSuccessd!','result':{'data':[{'MCC':'460','MNC':'1','LNG':'120.721423','LAT':'31.29854','O_LNG':'120.72577772352','O_LAT':'31.296529947917','PRECISION':'1101','ADDRESS':'江苏省苏州市吴中区金鸡湖大道368号'}]}}";
JsonParserjsonParser=newJsonParser();
JsonObjectjsonObj=jsonParser.parse(json).getAsJsonObject();
JsonObjectresult=jsonObj.get("result").getAsJsonObject();
JsonArraydata=result.get("data").getAsJsonArray();
StringO_LNG=data.get(0).getAsJsonObject().get("O_LNG").getAsString();
StringO_LAT=data.get(0).getAsJsonObject().get("O_LAT").getAsString();
StringADDRESS=data.get(0).getAsJsonObject().get("ADDRESS").getAsString();
System.out.println(O_LNG);
System.out.println(O_LAT);
System.out.println(ADDRESS);
}
}