T100——FGL与JSON之间的转换

FGL ==========>>>>>> JSON ===========>>> String:

IMPORT util
MAIN
    DEFINE cust_rec RECORD
               cust_num INTEGER,
               cust_name VARCHAR(30),
               order_ids DYNAMIC ARRAY OF INTEGER
           END RECORD
    DEFINE obj util.JSONObject
    LET cust_rec.cust_num = 345
    LET cust_rec.cust_name = "McMaclum"
    LET cust_rec.order_ids[1] = 4732
    LET cust_rec.order_ids[2] = 9834
    LET cust_rec.order_ids[3] = 2194
    LET obj = util.JSONObject.fromFGL(cust_rec)
    DISPLAY obj.toString()
END MAIN

String ==========>>>>>> JSON ==========>>>>>> FGL:

IMPORT util
MAIN
    DEFINE cust_rec RECORD
               cust_num INTEGER,
               cust_name VARCHAR(30),
               order_ids DYNAMIC ARRAY OF INTEGER
           END RECORD
    DEFINE js STRING
    DEFINE obj util.JSONObject
    LET js='{ "cust_num":2735, "cust_name":"McCarlson",
              "order_ids":[234,3456,24656,34561] }'
    LET obj = util.JSONObject.parse( js )
    CALL obj.toFGL( cust_rec )
    DISPLAY cust_rec.cust_name
    DISPLAY cust_rec.order_ids[4]
END MAIN

======遍历JSON取值======

            FOR i=1 TO l_json.getLength()
                    DISPLAY l_json.name(i),"",l_json.get(l_json.name(i)) 
            END FOR        

======修改、删除JSON的值======

IMPORT util
MAIN
    DEFINE obj util.JSONObject
    DEFINE rec RECORD
               id INTEGER,
               name STRING
           END RECORD
    DEFINE arr DYNAMIC ARRAY OF INTEGER
    LET obj = util.JSONObject.create()
    CALL obj.put("simple", 234)
    LET rec.id = 234
    LET rec.name = "Barton"
    CALL obj.put("record", rec)
    LET arr[1] = 234
    LET arr[2] = 2837
    CALL obj.put("array", arr)
    DISPLAY obj.toString()
END MAIN
IMPORT util
MAIN
    DEFINE obj util.JSONObject
    LET obj = util.JSONObject.create()
    CALL obj.put("address", "5 Brando Street")
    CALL obj.remove("address")
    DISPLAY obj.get("address")
END MAIN

以上来自Genero Studio Help帮助文档。

猜你喜欢

转载自www.cnblogs.com/xiaoli9627/p/12660030.html