JSON01

本文详细介绍了如何在Android应用中解析JSON数据,并通过示例代码展示了将JSON字符串转换为实际应用的功能。通过解析JSON数据,我们可以轻松地从网络获取信息并将其整合到我们的应用中,提高应用的交互性和实用性。
package mars.json;


import android.R;
import android.support.v4.app.Fragment;
import android.app.Activity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.os.Build;

public class MainActivity extends Activity {

private String jsonData = "[{\"name\":\"Micheal\"},{\"name\":\"Mike\":21}]";
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_item);
button = (Button)findViewById(R.id.button1);
button.setOnClickListener(new ButtonListener());
}

private class ButtonListener implements OnClickListener{

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
JsonUtils jsonUtils = new JsonUtils();
jsonUtils.parseJson(jsonData);
}

}
}


package mars.json;

import java.io.StringReader;

import android.util.JsonReader;

public class JsonUtils {

public void parseJson(String jsonData){
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("name")){
System.out.print("name--->" + reader.nextString());
}
else if(tagName.equals("age")){
System.out.println("age--->" + reader.nextInt());
}
}
reader.endObject();
}
reader.endArray();
}catch(Exception e){
e.printStackTrace();
}
}
}
{"bitmapMap":{"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png":"","/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png":""}, "json01": "[{\"dateEnd\":\"2025-10-12\",\"dateStart\":\"2025-10-12\",\"id\":5,\"objCode\":\"1111111111111\",\"objDetail\":\"\",\"objName\":\"2222\",\"rangeName\":\"\",\"time\":\"2025-10-12 18:48:34\",\"totalNum\":3333}]", "json02": "[{\"id\":1,\"isIn\":true,\"num\":1,\"objCode\":\"202510121749169480\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png\",\"objName\":\"商品1\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749169950\",\"time\":\"2025-10-12 17:49:16\"}, {\"id\":2,\"isIn\":false,\"num\":2,\"objCode\":\"202510121749169480\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png\",\"objName\":\"商品1\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749164584\",\"time\":\"2025-10-12 17:49:16\"}, {\"id\":3,\"isIn\":true,\"num\":3,\"objCode\":\"202510121749163010\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png\",\"objName\":\"商品2\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749168396\",\"time\":\"2025-10-12 17:49:16\"}, {\"id\":4,\"isIn\":false,\"num\":5,\"objCode\":\"202510121749163010\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png\",\"objName\":\"商品2\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749161459\",\"time\":\"2025-10-12 17:49:16\"}]" }这是一个什么格式的
10-13
给定的内容 `{"bitmapMap":{"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png":"","/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png":""},"json01":"[{"dateEnd":"2025-10-12","dateStart":"2025-10-12","id":5,"objCode":"1111111111111","objDetail":"","objName":"2222","rangeName":"","time":"2025-10-12 18:48:34","totalNum":3333}]","json02":"[{"id":1,"isIn":true,"num":1,"objCode":"202510121749169480","objImg":"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png","objName":"商品1","rangeName":"一号仓库","remark":"","scanID":"202510121749169950","time":"2025-10-12 17:49:16"},{"id":2,"isIn":false,"num":2,"objCode":"202510121749169480","objImg":"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png","objName":"商品1","rangeName":"一号仓库","remark":"","scanID":"202510121749164584","time":"2025-10-12 17:49:16"},{"id":3,"isIn":true,"num":3,"objCode":"202510121749163010","objImg":"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png","objName":"商品2","rangeName":"一号仓库","remark":"","scanID":"202510121749168396","time":"2025-10-12 17:49:16"},{"id":4,"isIn":false,"num":5,"objCode":"202510121749163010","objImg":"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png","objName":"商品2","rangeName":"一号仓库","remark":"","scanID":"202510121749161459","time":"2025-10-12 17:49:16"}]"}` 是 JSON 格式。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,基于 JavaScript 的一个子集,但独立于语言。此内容以 `{}` 包裹,是一个 JSON 对象,包含多个键值对。例如,`"bitmapMap"` 键对应的值是一个子 JSON 对象,其中又包含键值对;`"json01"` 和 `"json02"` 键对应的值是字符串,且这两个字符串看起来也是 JSON 格式的数据(不过这里是以字符串形式存在于外层 JSON 对象中)。 以下是使用 Python 代码验证该字符串是否为有效的 JSON 格式: ```python import json json_str = '{"bitmapMap":{"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png":"","/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png":""},"json01":"[{\"dateEnd\":\"2025-10-12\",\"dateStart\":\"2025-10-12\",\"id\":5,\"objCode\":\"1111111111111\",\"objDetail\":\"\",\"objName\":\"2222\",\"rangeName\":\"\",\"time\":\"2025-10-12 18:48:34\",\"totalNum\":3333}]","json02":"[{\"id\":1,\"isIn\":true,\"num\":1,\"objCode\":\"202510121749169480\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png\",\"objName\":\"商品1\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749169950\",\"time\":\"2025-10-12 17:49:16\"},{\"id\":2,\"isIn\":false,\"num\":2,\"objCode\":\"202510121749169480\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob001.png\",\"objName\":\"商品1\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749164584\",\"time\":\"2025-10-12 17:49:16\"},{\"id\":3,\"isIn\":true,\"num\":3,\"objCode\":\"202510121749163010\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png\",\"objName\":\"商品2\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749168396\",\"time\":\"2025-10-12 17:49:16\"},{\"id\":4,\"isIn\":false,\"num\":5,\"objCode\":\"202510121749163010\",\"objImg\":\"/data/user/0/com.xiaoyi.xyscaninput/files/ob002.png\",\"objName\":\"商品2\",\"rangeName\":\"一号仓库\",\"remark\":\"\",\"scanID\":\"202510121749161459\",\"time\":\"2025-10-12 17:49:16\"}]"}' try: data = json.loads(json_str) print("该字符串是有效的 JSON 格式。") except json.JSONDecodeError: print("该字符串不是有效的 JSON 格式。") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值