Skip to content

Latest commit

 

History

History
100 lines (70 loc) · 1.49 KB

fscript_json.md

File metadata and controls

100 lines (70 loc) · 1.49 KB

JSON 扩展函数

1.json_load

加载 json 数据。


原型

json_load(str) => object
json_load(binary) => object
json_load(data, size) => object

2.json_save

将对象保存为 json 数据。


原型

json_save(obj) => binary 

3.json_save_to_string

将对象保存为字符串数据。


原型

json_save_to_string(obj) => string 

4.ubjson_load

加载 ubjson 数据。


原型

ubjson_load(binary) => object
ubjson_load(data, size) => object

5.ubjson_save

将对象保存为 ubjson 数据。


原型

ubjson_save(obj) => binary

完整示例

//load from string
str='{
    "name" : "fscript",
    "age" : 100
}'
a=json_load(str)

assert(object_get(a, "name")=="fscript");
assert(object_get(a, "age")==100);

//save to file
b=json_save(a)
assert(file_write("test.json", b))

//json obj to string
c=json_save_to_string(a)
assert(c==str);

//load from file as text
a = json_load(file_read_text("test.json"))

assert(object_get(a, "name")=="fscript");
assert(object_get(a, "age")==100);

//load from file as binary
a = json_load(file_read_binary("test.json"))
assert(file_remove("test.json"))

assert(object_get(a, "name")=="fscript");
assert(object_get(a, "age")==100);

assert(file_remove("test.json"))
unset(a)
unset(b)
unset(c)
unset(str)