42-字符串到json 的错误 com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String

json:

{"updated_at":1551780617,"attr":{"uptime_h":3,"uptime_m":17},"did":"GBBxjJYAxE4apkxwEzR3"}

Map rMap = (Map) JSON.parse("{"updated_at":1551780617,"attr":{"uptime_h":3,"uptime_m":17},"did":"GBBxjJYAxE4apkxwEzR3"} ");

在提取出  rMap.get("attr");  时得到的是:{"uptime_h":3,"uptime_m":17}

但我要得到里面的东西,直接用字符串不好搞,我把它转为json 提取:

Map rMap2 = (Map) JSON.parse((String)rMap.get("attr"));

结果就报错了: com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String

原因是:改map提取出来的对象不能转为String,而要通过它的方法 toString 来转化:

String str = map.get("attr").toString();
System.out.println("ddd===" + str);
Map rMap = (Map) JSON.parse(str);
System.out.println(rMap.get("uptime_h"));

OK!!!

原文地址:https://www.cnblogs.com/zhumengdexiaobai/p/10480550.html

时间: 2024-08-07 17:12:55

42-字符串到json 的错误 com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String的相关文章

com.alibaba.fastjson.JSONObject cannot be cast to XXX异常解决

项目开发中遇到过几次这个问题,所以记录一下,代码如下: 1 @PostMapping("/save-files") 2 public void addFiles(@RequestBody List<AddFileRecordRequestDto> fileRecords) 3 { 4 LoginInfo loginInfo=sessionUtils.getLoginInfo(); 5 Assert.notNull(loginInfo,"登录信息已过期")

JSON工具类库: alibaba/fastjson 使用记录

JSON工具类库: alibaba/fastjson 使用记录 一.了解JSON JSON标准规范中文文档: http://www.json.org/json-zh.html 最佳实践:http://kimmking.github.io/2017/06/06/json-best-practice/ (JSON的高级使用,特别十分有参考价值) 二.项目地址和Wiki: Git地址: https://github.com/alibaba/fastjson Wiki:https://github.co

groovy --不注意的小错误(java.lang.String.positive() is applicable)

sql 语句拼接报错: No signature of method: java.lang.String.positive() is applicable for argument types: () values: [] 原因:字符串相加时,加号前后有空格 例如(这样是不行的): sql =+ "and c.efficientStatus = "+courseStatus //错误 要把加号后面的空格去掉就行了,简直了. 新手的学习笔记:这是自己学习过程中的记录,方便自己回顾,好记性

org.json.JSONException: Value of type java.lang.String cannot be converted to JSONObject

Value of type java.lang.String cannot be converted to JSONObject 解析服务器返回的Json串时,JSONObject对象抛出了这个异常. 原以为是返回的json格式错误了,仔细对比看不出所以然.至少字符上看是格式没问题的.. 那就可能是编码的问题了.仔细比较每个字符,的确在json串头部发现字符:"\ufeff" . 客户端解决方案: 1 public static final String removeBOM(Strin

Jackson错误:Can not deserialize instance of java.lang.String out of START_OBJECT token

org.springframework.http.converter.HttpMessageNotReadableException: Could not read JSON: Can not deserialize instance of java.lang.String out of START_OBJECT token at [Source: [email protected]; line: 1, column: 112] (through reference chain: com.web

错误/异常:java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType 的解决方法

1.错误/异常视图 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'baseDao' defined in class path resource [spring/beans_common.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInsta

当写listview的onItemClick的方法时写Toast的参数context写成this出现can&#39;t resolve method ’make text(OnClickListener,java.lang.String,int)&#39;的错误,原因

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Fruit fruit = fruitList.get(position); //Toast.makeText(this,fruit.getName(),Toast.L

Android错误笔记:Invalid layout of java.lang.String at value

Invalid layout of java.lang.String at value## A fatal error has been detected by the Java Runtime Environment:##  Internal Error (javaClasses.cpp:124), pid=9696, tid=9948#  fatal error: Invalid layout of preloaded class## JRE version:  (8.0_11-b12) (

java.lang.ClassCastException: java.lang.String cannot be cast to com.jy.hfims.domain 映射实体类型错误

今天在做 excel导出的时候,出现了一个问题"java.lang.ClassCastException: java.lang.String cannot be cast to com.domain.xxx": 公司用hibernate,查询时候可以用sql和hql,用什么一般看心情,第一次查询用的是select g.* from persion g ,site s where g.wz=s.dz(当然都是简写); 当get实体导出的 时候出现了" java.lang.Cla