问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中将map转成json时,如何将map中的整型数字在转成json后,变成字符串,而不是整型。

发布网友 发布时间:2022-10-26 22:00

我来回答

2个回答

热心网友 时间:2023-09-19 10:43

好像没有什么特别的办法,可能是我才疏学浅,

我知道的两种方式:

map是键值对存在,那么类型都是固定的,我们可以再申请个map<String ,String>遍历替换原来的map再转换成json字符串

字符串替换,用正则添加双引号:

public void testJson(){
    Map<String,Integer> map = new HashMap<String,Integer>();
    map.put("aaa", 111);
    String json = JSON.toJSONString(map);   
    String json1 = json.replaceAll(":", ":\"");
    json1 = json1.replaceAll("}", "\"}");
    System.out.println(json);
    System.out.println(json1);
}

追问你的代码不太对,不应该直接把所有的替换了

追答map中都是键值对,每个数据类型都相同,如果要把里面的Integer都替换成String两种方法应该是可以的,如果你要把其中某些数值做转换那就新建map做遍历替换把。

热心网友 时间:2023-09-19 10:43

好像没有什么特别的办法,可能是我才疏学浅,

我知道的两种方式:

map是键值对存在,那么类型都是固定的,我们可以再申请个map<String ,String>遍历替换原来的map再转换成json字符串

字符串替换,用正则添加双引号:

public void testJson(){
    Map<String,Integer> map = new HashMap<String,Integer>();
    map.put("aaa", 111);
    String json = JSON.toJSONString(map);   
    String json1 = json.replaceAll(":", ":\"");
    json1 = json1.replaceAll("}", "\"}");
    System.out.println(json);
    System.out.println(json1);
}

追问你的代码不太对,不应该直接把所有的替换了

追答map中都是键值对,每个数据类型都相同,如果要把里面的Integer都替换成String两种方法应该是可以的,如果你要把其中某些数值做转换那就新建map做遍历替换把。

热心网友 时间:2023-09-19 10:43

public static String map2Json(Map map) {
if (map == null) {
return "{}";
} else {
Set keys = map.keySet();
StringBuffer jsonBuffer = new StringBuffer();
jsonBuffer.append("{");
Iterator it = keys.iterator();

while (true) {
while (it.hasNext()) {
Object key = it.next();
Object value = map.get(key);
if (value instanceof List) {
List jsonMap2 = (List) value;
jsonBuffer.append("\"" + key + "\":[");
Iterator iterator = jsonMap2.iterator();

while (iterator.hasNext()) {
Map jsonMap1 = (Map) iterator.next();
jsonBuffer.append(map2Json(jsonMap1));
if (iterator.hasNext()) {
jsonBuffer.append(",");
}
}

jsonBuffer.append("]");
if (it.hasNext()) {
jsonBuffer.append(",");
}
} else if (value instanceof Map) {
jsonBuffer.append("\"" + key + "\":");
Map jsonMap = (Map) value;
jsonBuffer.append(map2Json(jsonMap));
if (it.hasNext()) {
jsonBuffer.append(",");
}
} else {
jsonBuffer.append("\"" + key + "\":\""
+ (null != value && !"null".equals(value) ? string2Json(String.valueOf(value)) : "")
+ "\"");
if (it.hasNext()) {
jsonBuffer.append(",");
}
}
}

jsonBuffer.append("}");
return jsonBuffer.toString();
}
}
}

热心网友 时间:2023-09-19 10:43

public static String map2Json(Map map) {
if (map == null) {
return "{}";
} else {
Set keys = map.keySet();
StringBuffer jsonBuffer = new StringBuffer();
jsonBuffer.append("{");
Iterator it = keys.iterator();

while (true) {
while (it.hasNext()) {
Object key = it.next();
Object value = map.get(key);
if (value instanceof List) {
List jsonMap2 = (List) value;
jsonBuffer.append("\"" + key + "\":[");
Iterator iterator = jsonMap2.iterator();

while (iterator.hasNext()) {
Map jsonMap1 = (Map) iterator.next();
jsonBuffer.append(map2Json(jsonMap1));
if (iterator.hasNext()) {
jsonBuffer.append(",");
}
}

jsonBuffer.append("]");
if (it.hasNext()) {
jsonBuffer.append(",");
}
} else if (value instanceof Map) {
jsonBuffer.append("\"" + key + "\":");
Map jsonMap = (Map) value;
jsonBuffer.append(map2Json(jsonMap));
if (it.hasNext()) {
jsonBuffer.append(",");
}
} else {
jsonBuffer.append("\"" + key + "\":\""
+ (null != value && !"null".equals(value) ? string2Json(String.valueOf(value)) : "")
+ "\"");
if (it.hasNext()) {
jsonBuffer.append(",");
}
}
}

jsonBuffer.append("}");
return jsonBuffer.toString();
}
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑上的照片上怎么加上文字 电脑图片外如何加文字怎么在电脑图片上添加文字 工字钢与槽钢哪个好 槽钢 工字钢 哪个结实 核污染水对江西宜春有影响吗 江西盐能吃吗 谣盐各地应急 王者荣耀 王者熟练度等级标志是什么样的? 王者荣耀 王者荣耀0熟练度到绿熟练度打几把? 为什么我家无线信号很弱? 《小学语文教师》读书心得 Vonjo(pacritinib,帕瑞替尼)多少钱能买到? 齐鲁保2021保险怎么买? 联合培养研究生和研究生的区别在哪? 烟台大腿溶脂大概多少钱? 瘦臀的最好方法? 有一种美,叫低头不见双下巴 相比抽脂手术,冷冻溶脂效果如何? 金融诈骗投诉平台 那种可以在涂写擦掉的塑料板叫什么? 西红柿种植的时间什么时候最好? 为什么我电脑下不了主题桌面? 雪里面有什么成分了,冰雹里又有什么成分 雪里面有什么成分了,冰雹里又有什么成分了? 赵一博演讲观后感言 电脑一般多长时间清理一次灰尘最好?? 电脑清灰多久一次? 猪肉价格一月猛涨5%,百姓对未来肉价难看好,未来猪肉价格会是什么走势? 谁有 2013年北京美术联考试卷 的图片? 素描 速写 色彩 清楚点的 柚子相机电脑版怎么拍照 人生艰难,难在选择作文 修合无人见,存心有天知什么意思? “修合无人见,存心有天知”什么意思? 挖井我要挖一个20米深6米宽井下有10米深的高硬度的石头不能用炸药爆破,有没有其他的方法进行 求歌词 好像是王心凌唱的 有一段是:阿哩哩阿喂..阿哩哩阿哩哩啊哦.. 王心凌的哪首歌欢快? 玩lol cpu使用率90多卡 是怎么回事 一玩游戏CPU直接就百分之九十多了求大神赐教 公司三方调解协议书 劳动调解的简单协议书 杭州滴滴公司地址 村任乡中心校英语朗读比赛活动方案 学生毕业典礼活动策划书 加班考勤未写,领班需检讨书俩百字以上怎么写? 海岛旅游的唯美句子 什么眼线笔防水 My Only Lover (1990 Digital Remaster) 歌词 英雄联盟S6瑞兹装备怎么出 屈臣氏蒸馏水敷脸功效(蒸馏水敷脸都有哪些好处) 乡镇事业编