精华内容
下载资源
问答
  • 替换JSONArray中指定字段名称的值value

    千次阅读 2019-02-22 16:12:44
    1.忽略JSONObject中指定字段名称大小写,依旧可以替换该字段对应的值...*inputParam jsonArray中jsonobject的key的名称,inputParam名字忽略大小写 *paramValue 要修改inputParam原来对应的值,将原来的值改成param...

    1.忽略JSONObject中指定字段名称大小写,依旧可以替换该字段对应的值。

    即:指定的字段名称和输出的字段名称大小写不一致,但依旧可以替换该字段名称的值,替换后按原来字段输出

    /**

    *inputParam jsonArray中jsonobject的key的名称,inputParam名字忽略大小写

    *paramValue 要修改inputParam原来对应的值,将原来的值改成paramValue

    */

    public static JSONArray replaceValue2JSONArray(JSONArray array,String inputParam,String paramValue) {
            JSONArray jsonArray = new JSONArray();
            if (array == null || array.isEmpty()) {
                return jsonArray;
            }
            
            for (int i = 0; i < array.size(); i++) {
                JSONObject jsonObject2 = array.getJSONObject(i);

                Set<String> keys = jsonObject2.keySet();
                for (String curKey : keys) {
                    if (curKey.equalsIgnoreCase(inputParam)) {
                        jsonObject2.put(curKey, paramValue) ;
                    }
                }
                jsonArray.add(jsonObject2);
            
            }
            
            return jsonArray;
        }

    展开全文
  • JSONArray

    千次阅读 2018-07-30 16:42:36
    环境 commons-beanutils-1.8.3.jar commons-collections-3.1.jar commons-lang-2.6.jar commons-logging-1.1.1.jar ...JSONArray是一个有序的值序列。它的外部文本形式是一个用方括号括起来的字符串...

    环境

    commons-beanutils-1.8.3.jar

    commons-collections-3.1.jar

    commons-lang-2.6.jar

    commons-logging-1.1.1.jar

    ezmorph-1.0.6.jar

    json-lib-2.4-jdk15.jar

    API

    JSONArray是一个有序的值序列。它的外部文本形式是一个用方括号括起来的字符串,用逗号分隔值。内部表单是具有 索引的对象getopt用于通过索引访问值的element方法,以及用于添加或替换值的方法。的值可以是任何这些类型的: BooleanJSONArrayJSONObject, NumberString,或 JSONNull object

    构造函数可以将JSON文本转换为Java对象。该 toString方法转换为JSON文本。

    get方法返回如果可以找到一个值,并且抛出异常如果不能找到。一个opt方法返回一个默认值,而不是抛出异常,所以是用于获得可选值是有用的。

    泛型get()opt()方法返回一个可以转换或查询类型的对象。还有一些类型 getopt方法可以为您进行类型检查和输入coersion。

    toString方法 生成的文本严格遵循JSON语法规则。构造者在他们接受的文本中更宽容:

    • 额外的, (逗号)可能出现在结束括号之前。
    • null当有, (逗号)省略时,将插入该值 。
    • 字符串' 可以引用(单引号)。
    • 如果字符串不以引号或单引号开头,并且如果它们不包含前导或尾随空格,并且它们不包含任何这些字符{ } [ ] / \ : , = ; #,则根本不需要引用它们: 如果它们看起来不像号,如果它们不是保留字truefalsenull
    • 值可以用; (分号) 和, (逗号)分隔。
    • 数字可以具有0- (八进制)或 0x- (十六进制)前缀。
    • 使用斜杠,斜杠和散列约定编写的注释将被忽略。

    实现

    简化的用户类:

    package com.sshmobai;
    
    import java.util.Date;
    
    public class User {
    	private String username;
    	private String password;
    	private Date createdTime;
    	
       public User(){super();}
    	   
    	public User(String username, String password) {
    		super();
    		this.username = username;
    		this.password = password;
    	}
    
    	public User(String username, String password, Date createdTime) {
    		super();
    		this.username = username;
    		this.password = password;
    		this.createdTime = createdTime;
    	}
    
    	public String getUsername() {
    		return username;
    	}
    	public void setUsername(String username) {
    		this.username = username;
    	}
    	public String getPassword() {
    		return password;
    	}
    	public void setPassword(String password) {
    		this.password = password;
    	}
    	public Date getCreatedTime() {
    		return createdTime;
    	}
    	public void setCreatedTime(Date createdTime) {
    		this.createdTime = createdTime;
    	}
    	
    	@Override
    	public String toString() {
    		return "User [username=" + username + ", password=" + password + ", createdTime=" + createdTime + "]";
    	}
    }
    

    测试1

    User user = new User("ssh", "mobai", new Date());
    System.out.println(user);
    System.out.println(JSONObject.fromObject(user).toString());

    结果1

    User [username=ssh, password=mobai, createdTime=Mon Jul 30 16:30:41 CST 2018]
    {"createdTime":{"date":30,"day":1,"hours":16,"minutes":30,"month":6,"seconds":41,"time":1532939441331,"timezoneOffset":-480,"year":118},"password":"mobai","username":"ssh"}
    

    测试2

    User user = new User("ssh", "mobai", new Date());
    System.out.println(user);
    
    JsonConfig config = new JsonConfig();  
    config.registerJsonValueProcessor(Date.class, new JsonValueProcessor() {
           //自定义日期格式
           SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         
           @Override
           /**
            * 处理单个Date对象
            */
           public Object processObjectValue(String propertyName, Object date,JsonConfig config) {
              return simpleDateFormat.format(date);
           }
         
           @Override
           /**
            * 处理数组中的Date对象
            */
           public Object processArrayValue(Object date, JsonConfig config) {
              return simpleDateFormat.format(date);
           }
        });
    System.out.println(JSONObject.fromObject(user, config).toString());

    结果2

    User [username=ssh, password=mobai, createdTime=Mon Jul 30 16:35:41 CST 2018]
    {"createdTime":"2018-07-30 16:35:41","password":"mobai","username":"ssh"}

    测试3

    User user = new User("ssh", "mobai", new Date());
    System.out.println(user);
    
    JsonConfig config = new JsonConfig();  
    config.setExcludes( new String[]{"password"});
    System.out.println(JSONObject.fromObject(user,config).toString());

    结果3

    User [username=ssh, password=mobai, createdTime=Mon Jul 30 16:39:28 CST 2018]
    {"createdTime":{"date":30,"day":1,"hours":16,"minutes":39,"month":6,"seconds":28,"time":1532939968378,"timezoneOffset":-480,"year":118},"username":"ssh"}
    

     

    展开全文
  • for (int i = 0; i jsonArray.size(); i++) {  String rep = jsonArray.get(i).toString();  String replace = "";  String city = "\"city\":";  
    for ( int i = 0; i < jsonArray .size(); i ++) {
                  String rep = jsonArray .get( i ).toString();
                  String replace = "" ;
                  String city = "\"city\":" ;
                  String sum = "\"detailsum\":" ;
                  String reward = "" ;
                   replace = rep .replace( "[" , "" ).replace( "]" , "" );
                  String[] sp = replace .split( "," );
                  String re1 = city + sp [0].toString();
                  String re2 = sum + sp [1].toString();
                   reward = "{" + re1 + "," + re2 + "}" ;
                  JSONObject jsonObject = JSONObject.fromObject( reward );
                // JSONArray jsonarray = JSONArray.fromObject( actinfo );

                   jsonArray .set( i , jsonObject );
              }

    通过以上方法可以将string取出然后化为单独jsonobject或jsonarray类型
    展开全文
  • String value=(a.toString()).replace("\"\"", "\"-\""); 解释: ...JSONArray a = new JSONArray(); jsonObject.accumulate("data", value); 改一改 // JSONArray a = new JSONArr

    String value=(a.toString()).replace("\"\"", "\"-\"");

    解释:

    原来,jsonObject传过去有很多空值。

    JSONArray a = new JSONArray();

    jsonObject.accumulate("data", value);


    改一改

    // JSONArray a = new JSONArray();

    // JSONObject a = new JSONObject();


    1.无论什么对象,一律转换成String;


    2.String value=(a.toString()).replace("\"\"", "\"-\"");

    3.jsonObject.accumulate("data", value);

    展开全文
  • JSONObject和 JSONArray

    2019-07-29 17:09:05
    值可以是任意类型:Boolean,JSONArray,JSONObject,Number,String,or the JSONObject.NULL Object 2,net.sf.json.JSONArray JSONArray是一个有序的值序列。值可以是任意类型:Boolean, JSONArr...
  • public static JSONArray remove(int index,JSONArray jsonArray) { JSONArray mJsonArray = new JSONArray(); if (index < 0){ return mJsonArray; } ...
  • Bean 类解析异常 总有一群** 把接口弄得...我推荐的办法是 使用JSONObject jsonArray进行Bean类解析处理 先把解析的数据放到一个string的字符串里面 然后通过JSONObject jsonArray进行json串解析处理 就是遇到所有j
  • 一:遍历JsonArray String str = "[{name:'a',value:'aa'},{name:'b',value:'bb'},{name:'c',value:'cc'},{name:'d',value:'dd'}]" ; // 一个未转化的字符串 JSONArray json = JSONArray.fromObject...
  • 使用JSONObject和JSONArray

    千次阅读 2015-07-07 23:48:09
    值可以是任意类型:Boolean,JSONArray,JSONObject,Number,String,or the JSONObject.NULL Object.形如:“` http://maps.google.com/maps/api/geocode/json?sensor=false&address=beijing 返回如下:
  • 1. add方法给JSONArray添加元素 1.1. boolean add(Object value), 给JSONArray添加值, 被当作Object类型添加。json-lib底层, 会创建一个JsonConfig对象使用。 1.2. boolean add(Object value, JsonConfig ...
  • JSONArray 与 String 之间转换

    万次阅读 2019-04-11 11:36:09
    import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; public class test { public static void main(String[] args) { //转化成 JSONObject obj = new JS...
  • JSONArray属性值的修改

    千次阅读 2020-04-30 09:30:42
    之前直接通过生成字符串后进行字符串替换实现的,实际上这里可能会替换调value的值中相同的字符,虽然概率很低,但是鉴于对个人的严格要求,还是严谨地修改了实现方法,主要基于如下的方法 public static JSONObject ...
  • net.sf.json.JSONObject与JSONArray

    千次阅读 2018-08-03 14:39:13
    值可以是任意类型:Boolean,JSONArray,JSONObject,Number,String,or the JSONObject.NULL Object 2,net.sf.json.JSONArray JSONArray是一个有序的值序列。值可以是任意类型:Boolean, JSONArr...
  • 现象: 导入的包是 commons-lang3-3.1.jar 出现异常: java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/...将commons-lang3-3.1.jar替换成commons-lang-2.4.jar 
  • object' is an array. Use JSONArray instead

    千次阅读 2018-10-08 19:25:15
    list集合转换JSON出错误 ...将JSONObject替换JSONArray 代码: JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); JSO...
  • JSONObject: JSONObject只是一种数据结构,可以理解为JSON格式的数据结构(key-value结构),可以使用put方法...内部表单是具有索引的对象get和opt用于通过索引访问值的element方法,以及用于添加或替换值的方法 ..
  • list集合转换JSON出错误意思是:...解决方法:将JSONObject替换JSONArray代码:JsonConfig jsonConfig = new JsonConfig();jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);JSONArray json =
  • net.sf.json.JSONObject与JSONArray的应用

    千次阅读 2018-04-17 15:53:36
    ...值可以是任意类型:Boolean,JSONArray,JSONObject,Number,String,or the JSONObject.NULL Object 2,net.sf.json.JSONArray JSONArray是一个有序的值序列。值可以是任意类型:Boolean, J
  • java中在JSONArray首位插入JSONObject

    千次阅读 2019-06-15 14:42:41
    java中在JSONArray首位插入JSONObject 在网上找了很多都没找到每条JSONObject数据都插入在JSONArray的第一位的方法. 于是, 自己动手写了一个,记录一下 try { boolean falg = true; JSONObject d = null...
  • var jsonArray=[ {"taskUserList":[], "COMMENT":"测试1","FLOW_TASK_NAME":"xx1核查","GID":"1"}, {"taskUserList":[ {"BMMC":"开发部","YHXM":"张三4"}, {"BMMC":"行政部","YHXM":"张三2"}, {"BMMC":...
  • 当遇到key相同时,put方法会把value值替换掉,而accumulate会在当前key下生成一个JSONArray。element方法遇到key相同时,如果value不是空则执行accumulate方法,否则会移除这个key. 此外JSONObject.fromObject()方法...
  • 解决fastJson转换List为JSONArray时null值无法保存为"...“的实际需求(因返回给app端时需要将null替换为”"),尝试过JSONArray.toJSONString(itemList,SerializerFeature.WriteNullStringAsEmpty)但...
  • “2222”}和{“111”:”3333“}和{”111“:”6666“},可是结果打印出来只有”6666“这个结果,可以看到这边存在的key是不可以重复的,要是重复的话,就会被后来存入的替换掉。并且,JSONObject还有自动排序的操作...
  • 2,JSONArray json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的 Json对象中添加的是键值对,JSONArray中添加的是Json对象 import net.sf.json.JSONArray; import net.sf....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,742
精华内容 1,496
关键字:

jsonarray替换