Difference between revisions of "Json"
Jump to navigation
Jump to search
(Created page with "In Mini Micro, <c>json</c> is an import module in the <c>/sys/lib</c> directory. It provides conversion of MiniScript values to and from JSON format, as well as some...") |
m |
||
| (6 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| − | In [[Mini Micro]], <c>json</c> is an [[import]] module in the <c>/sys/lib</c> directory. It provides conversion of MiniScript values to and from JSON format, as well as some related utility functions. | + | In [[Mini Micro]], <c>json</c> is an [[import]] module in the <c>/sys/lib</c> directory. It provides conversion of MiniScript values to and from [https://www.json.org/ JSON] format, as well as some related utility functions. |
| − | + | Like all the modules in <c>/sys/lib</c>, the best documentation for the json module is the source code (<c>/sys/lib/json.ms</c>) itself. But this page summarizes the content in more concise form. | |
| + | == Functions == | ||
| + | |||
| + | After [[import|importing]] "json", the following methods may be accessed under the <c>json</c> map (e.g. as <c>json.parse</c>). | ||
| + | |||
| + | {| class="wikitable" | ||
| + | |- | ||
| + | ! 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. | ||
| + | |||
| + | <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:Sys Modules]] | ||
[[Category:Mini Micro]] | [[Category:Mini Micro]] | ||
| + | [[Category:Command-Line_MiniScript]] | ||
Latest revision as of 00:49, 5 April 2025
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.
Like all the modules in /sys/lib, the best documentation for the json module is the source code (/sys/lib/json.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