首页 > Web开发 > 详细

Groovy中json的一些操作

时间:2020-10-26 19:54:21      阅读:40      评论:0      收藏:0      [点我收藏+]

在测试过程中,尤其是接口自动化测试框架搭建时,经常会碰到 json 文件或者数据流的处理,下面看看json的一些处理实例:

/**
 * @author :ZackZhou
 * @date :Created in 2020/9/7 5:49 PM
 * @description :Groovy Json 的一些操作
 * @modified By:
 * @version:
 */

import groovy.json.JsonBuilder
import groovy.json.JsonOutput
import groovy.json.JsonSlurper

def dids = ["1","2"]
def gids =["1","2"]

def did_content = new ArrayList<Map>()
def gid_content = new ArrayList<Map>()

for(did in dids)
{
    def single = [:]
    single.put("deviceId","${did}")
    single.put("deviceSeri","")
    single.put("deviceType","")

    did_content.add(single)
}

for(gid in gids)
{
    def single = [:]
    single.put("targetValue","${gid}")
    single.put("operator","2")
    single.put("classId","0")
    single.put("targetId","0")

    gid_content.add(single)
}

def did_json = new File("./did.json")
def gid_json = new File("./gid.json")

did_json.withWriter {
    writer ->
        ////将对象转成Json 方法1
        writer.write(JsonOutput.toJson(did_content))
}

gid_json.withWriter {
    writer ->
        ////将对象转成Json 方法1,但是使用 Category 功能
        writer.write(
                use(JsonOutput)
                    {
                        gid_content.toJson() //Category功能,将方法toJson 加到了 gid_content 中
                    }
        )
}


//解析Json文件
JsonSlurper jsonSlurper = new JsonSlurper()
def did_list = jsonSlurper.parse(did_json)

assert did_list instanceof List

(List)did_list.each {
    item ->
        assert item instanceof Map
        (Map)item.each {
            k,v ->
                println(k + ":" + v)
        }
}

//将对象转成Json 方法2
JsonBuilder jsonBuilder = new JsonBuilder()
jsonBuilder.content = did_list
println jsonBuilder.toPrettyString()

 

Groovy中json的一些操作

原文:https://www.cnblogs.com/FsharpZack/p/13879349.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!