大家好!我是阿凯。最近公司做数据对接要求传输的JSON数据,key值全部大写!

导入maven包

     <dependency><groupId>net.sf.json-lib</groupId><artifactId>json-lib</artifactId><version>2.4</version><classifier>jdk15</classifier></dependency>

jar包形式:json-lib-2.4-jdk15.jar所需全部JAR包

导入工具类


import net.sf.json.JSONArray;
import net.sf.json.JSONObject;import java.util.Iterator;public class JsonConvert {public static void main(String[] args) {String json = "{'a':'a','b':'b','c':'c'}";String jsonArray =  "[{'a':'a', 'b':'b', 'aa':{'qq':'qq','ww':'ww','ee':'ee'}}]";//json的key转大写System.out.println(transtoUpperCaseObject(json));//json数组的key转大写System.out.println(transToArray(jsonArray).toString());}//json的key转大写//toUpperCase()换成toLowerCase() 转小写public static JSONObject transtoUpperCaseObject(String json) {JSONObject jSONArray1 = JSONObject.fromObject(json);JSONObject jSONArray2 = new JSONObject();Iterator it = jSONArray1.keys();while (it.hasNext()) {String key = (String) it.next();Object object = jSONArray1.get(key);if (object.getClass().toString().endsWith("JSONObject")) {jSONArray2.accumulate(key.toUpperCase(), transtoUpperCaseObject(object.toString()));} else if (object.getClass().toString().endsWith("JSONArray")) {jSONArray2.accumulate(key.toUpperCase(), transToArray(jSONArray1.getJSONArray(key).toString()));}else{jSONArray2.accumulate(key.toUpperCase(), object);}}return jSONArray2;}//json数组的key转大写public static JSONArray transToArray(String jsonArray) {JSONArray jSONArray1 = JSONArray.fromObject(jsonArray);JSONArray jSONArray2 = new JSONArray();for (int i = 0; i < jSONArray1.size(); i++) {Object jArray = jSONArray1.getJSONObject(i);if (jArray.getClass().toString().endsWith("JSONObject")) {jSONArray2.add(transtoUpperCaseObject( jArray.toString()));} else if (jArray.getClass().toString().endsWith("JSONArray")) {jSONArray2.add(transToArray(jArray.toString()));}}return jSONArray2;}
}

直接调用方法转换就可以了,注意jsonArray要以中括号开头和结尾

[{‘a’:‘a’, ‘b’:‘b’, ‘aa’:{‘qq’:‘qq’,‘ww’:‘ww’,‘ee’:‘ee’}}]

JSON所有key值转大写(转小写)相关推荐

  1. Js 将JSON内部key值转换大小写和首字母大写

    /*** @param {Object} json* @param {Object} type: 默认不传 ==>全部小写;传1 ==>全部大写;传2 ==>首字母大写* 将json ...

  2. fastjson 序列化时指定json的key值

    json字符串中的key是下划线例如:foot_dist,而实际实体类中的属性是footDist,添加 @JSONField(name = "foot_dist")即可 packa ...

  3. Java JSON中的key转换成大写或者小写

    在进行项目开发过程中和其他平台进行对接,对方平台接口中的key在对接过程中出现,key大小写转变的问题,所以开发工具类,防止出现这样的问题. 下面是具体代码实现: package com.jane.f ...

  4. python读取json数据的key值_jquery中怎么获取json的key值?

    展开全部 获取方法如下:用jquery回调函数完成. $.each(json, function(i) {    console.log(i); //获取键值 console.log(json[i]) ...

  5. Java将json中key值下划线转为驼峰格式

    目录 1 需求说明 2 Java工具类转换实现 2.1 代码 1.2 运行结果 3 转换为对应的java实体 1 需求说明 在开发过程中,有时会遇到json不是严格按照驼峰命名,需要将其中带有下划线的 ...

  6. JSON字符串key值驼峰转下划线

    起因 工作中需要解析特殊的JSON字符串,将JSON文本中所有的Map结构中的key的格式由驼峰转换为下划线.本着不重复造轮子的原则,我在网上搜索到了一些资料,都是下划线转驼峰的工具,没有驼峰转下划线 ...

  7. fastjson转换json字符串key的首字母小写变大写的解决办法

    问题描述 在开发过程中,由于接口文档的描述,要求json字符串的key首字母为大写,而java 的规范要求在定义bean的时候,成员属性是首字母小写的驼峰格式,java的基本规范一定要遵守,否则会出现 ...

  8. PYTHON 处理JSON文件(新建key值Findex,并将歌手名字转换为大写首字母作为value值)

    @PYTHON 处理JSON文件(新建key值Findex,并将歌手名字转换为大写首字母作为value值) 引入了第三方库 pypinyin 代码如下: import json import pypi ...

  9. JSON Key大写转小写(同理,小写转大写也可以)

    package com.zhdw.webservice.util;import java.util.Iterator;import net.sf.json.JSONArray; import net. ...

最新文章

  1. 对于后端来说,一个项目究竟应该怎么做
  2. iOS - Flutter混合开发
  3. 简单示例立马搞懂Java日期格式中yyyy-MM-dd HH:mm:ss和YYYY-MM-dd hh:mm:ss的区别
  4. C# 子类实例化基类 基类使用不了子类的方法_C#学习笔记11--接口/泛型
  5. [转载]图的割点、桥与双连通分支
  6. 【VLC-Android】vlc-android简例
  7. 看明星合影争C位,学PPT中C位排版法
  8. 程序员修仙之路--优雅快速的统计千万级别uv
  9. 代码还原,IDA中使用的宏
  10. java爬虫-2018国家统计局区划和城乡划分代码以及数据库、json文件
  11. 数据库系统概念 第六章 习题答案
  12. VS2017编译Detours1.5
  13. Android 联系人名字多音字的处理方法
  14. python 空字典定义方法
  15. hdu5064 Find Sequence 单调性dp
  16. php strpos ctf,CTF php代码审计 strpos()函数漏洞 XXE漏洞xinclude()
  17. 【Windows】win7虚拟机安装VMware Tools
  18. 爬虫学习笔记(用python爬取东方财富网实验)
  19. 值得收藏!史上最全WINDOWS安全工具锦集
  20. MacBook 安装 Docker 与 docker-compose 套装

热门文章

  1. 产品or研发or网络安全
  2. Win7 更新IE11 更新勒索病毒补丁 的最后救赎方案
  3. Linux下RTP编程(上)
  4. 三维GIS工程师进阶训练营
  5. ‘mnist.npz‘手写体数字数据集下载
  6. 微信小程序获取头像地址
  7. c++ 45行代码实现 生命游戏-细胞自动机!!!
  8. 博途PLC和MATLAB矩阵运算存储方法对比
  9. 使火狐浏览器默认在新的标签页打开书签
  10. java中的常见异常