HarmonyOS 鸿蒙NextJson字符串与Map集合对象如何互转?
HarmonyOS 鸿蒙Next Json字符串与Map集合对象如何互转?
// Map转Json字符串代码如下:
const map = new Map([
['name', '张三'],
['age', '18'],
['address', 'xian'],
]);
let jsonObject:Record<string,Object> = {}
map.forEach((value,key) => {
if (key != undefined && value != undefined) {
jsonObject[key] = value;
}
})
let info:string = JSON.stringify(jsonObject);
// Json字符串转Map
let strParam = ‘{“main”: {“num”: 1,“aaa”: 2},“ks”:“sadadas”,“sc”:11111,“update”:“asdasdasda”}’;
let obj: object = JSON.parse(strParam);
let targetMap: Map<string, object> = new Map<string, object>(Object.entries(obj));
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
在HarmonyOS鸿蒙Next开发中,将Json字符串与Map集合对象互转是一个常见的需求,通常可以通过以下方式实现:
-
Json字符串转Map集合: 使用
org.json.JSONObject
类,该类提供了toMap()
方法,可以直接将Json对象转换为Map集合。示例代码如下:import org.json.JSONObject; String jsonStr = "{\"key1\":\"value1\",\"key2\":\"value2\"}"; JSONObject jsonObject = new JSONObject(jsonStr); Map<String, Object> map = jsonObject.toMap();
-
Map集合转Json字符串: 同样使用
org.json.JSONObject
类,可以通过其构造函数将Map集合转换为Json对象,然后调用toString()
方法得到Json字符串。示例代码如下:import org.json.JSONObject; Map<String, Object> map = new HashMap<>(); map.put("key1", "value1"); map.put("key2", "value2"); JSONObject jsonObject = new JSONObject(map); String jsonStr = jsonObject.toString();
上述方法基于org.json
库,确保项目中已包含该库的依赖。如果项目中使用了其他Json处理库(如Gson或Jackson),转换方法会有所不同,但原理类似。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html