Difference between revisions of "Json"
(Added examples.) |
|||
| Line 16: | Line 16: | ||
|- | |- | ||
| toJSON(''value'', ''compact''=false, ''indent''=0) || converts MiniScript values into JSON format | | toJSON(''value'', ''compact''=false, ''indent''=0) || converts MiniScript values into JSON format | ||
| + | |- | ||
| + | | hexToInt(''s'') || convert hexadecimal string (e.g. "002A") to the equivalent number (42) | ||
|- | |- | ||
| escape(''s'') || change special characters into backslash sequences | | escape(''s'') || change special characters into backslash sequences | ||
| Line 21: | Line 23: | ||
| unescape(''s'') || replace backslash sequences with normal characters | | unescape(''s'') || replace backslash sequences with normal characters | ||
|} | |} | ||
| + | |||
| + | == Examples == | ||
| + | |||
| + | The following example builds a simple MiniScript data structure, then writes this out to a file in JSON format. | ||
| + | |||
| + | <ms>import "json" | ||
| + | |||
| + | data = {"name":"Alice", "job":"Engineer"} | ||
| + | data.kids = [] | ||
| + | data.kids.push {"name":"Billy", "age":8} | ||
| + | data.kids.push {"name":"Mary", "age":12} | ||
| + | |||
| + | f = file.open("data.json") | ||
| + | f.write(json.toJSON(data)) | ||
| + | f.close</ms> | ||
| + | |||
| + | The example below reads and parses the JSON file created above, then prints out the age of the first child. | ||
| + | |||
| + | <ms>import "json" | ||
| + | |||
| + | data = json.parse(file.open("data.json").read) | ||
| + | print data.kids[0].age</ms> | ||
[[Category:Mini Micro]] | [[Category:Mini Micro]] | ||
Revision as of 17:39, 12 September 2021
In Mini Micro, json is an import module in the /sys/lib directory. It provides conversion of MiniScript values to and from JSON format, as well as some related utility functions.
In Mini Micro, stringUtil is an import module in the /sys/lib directory. It provides various additional string-related functions, directly extending the string datatype.
Like all the modules in /sys/lib, the best documentation for stringUtil is the source code (/sys/lib/stringUtil.ms) itself. But this page summarizes the content in more concise form.
Functions
After importing "json", the following methods may be accessed under the json map (e.g. as json.parse).
| Method | Purpose |
|---|---|
| parse(jsonString) | parses JSON data into native MiniScript values |
| toJSON(value, compact=false, indent=0) | converts MiniScript values into JSON format |
| hexToInt(s) | convert hexadecimal string (e.g. "002A") to the equivalent number (42) |
| escape(s) | change special characters into backslash sequences |
| unescape(s) | replace backslash sequences with normal characters |
Examples
The following example builds a simple MiniScript data structure, then writes this out to a file in JSON format.
import "json"
data = {"name":"Alice", "job":"Engineer"}
data.kids = []
data.kids.push {"name":"Billy", "age":8}
data.kids.push {"name":"Mary", "age":12}
f = file.open("data.json")
f.write(json.toJSON(data))
f.close
The example below reads and parses the JSON file created above, then prints out the age of the first child.
import "json"
data = json.parse(file.open("data.json").read)
print data.kids[0].age