JSON字符串如下:{"device_id": "gh_4da91c444fee_8c04d0b766780c62","device_type":"gh_4da91c444fee","msg_type":"notify","data":"jlfjsdlkjflk","services":{"operation_status":{"status": 0},"lightbulb":{"alpha":70}}}我先替换status和alpha的值, 但是每一次更换的值是不固定的,你有什么方法可以替换吗
3条回答 默认 最新
- 衫燃愚下 2017-11-29 06:00关注
你可以用fastjson,将json字符串转成对象,然后进行数值替换
json对象,在java中其实就是mappublic void test(){ /* { "device_id": "gh_4da91c444fee_8c04d0b766780c62", "device_type": "gh_4da91c444fee", "msg_type": "notify", "data": "jlfjsdlkjflk", "services": { "operation_status": { "status": 0 }, "lightbulb": { "alpha": 70 } } } */ String jsonStr = ""; //转换成JSON对象 JSONObject jsonObj = JSONObject.parseObject(jsonStr); //根据key获取对象 JSONObject services = jsonObj.getJSONObject("services"); JSONObject operation_status = services.getJSONObject("operation_status"); operation_status.put("status", 1); JSONObject lightbulb = services.getJSONObject("lightbulb"); lightbulb.put("alpha", 100); jsonStr = jsonObj.toJSONString(); }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Latex算法流程图行号自定义
- ¥15 关于#python#的问题:我在自己的电脑上运行起来总是报错,希望能给我一个详细的教程,(开发工具-github)
- ¥40 基于51单片机实现球赛计分器功能
- ¥15 cs2游戏画面卡住,应用程序sid与指挥者sid不匹配
- ¥15 实验七:Pandas要有实验截图和代码
- ¥15 TypeError: Make sure that the iterable only contains strings.
- ¥35 电脑放图书馆,这是被黑了吗
- ¥15 等高线中数据取消科学计数法
- ¥15 Qt播放10路ffmpeg 视频流
- ¥15 如何利用闲置机械硬盘变现