JSON+C parsing for MATLAB
JSON+C parsing for MATLAB
This package offers some simple functions to handle JSON+C (JSON with comments) in a MATLAB script.
-
jsonc.removeJSONComments
removes JavaScript-style comments from the string (or char array) you give it as argument. -
jsonc.jsoncDecode
is a wrapper for MATLAB's nativejsondecode
. It filters the string you give it thoughjsonc.removeJSONComments
before passing it tojsondecode
. -
jsonc.jsonEncode
is a wrapper for MATLAB's nativejsonencode
. This tries to use thePrettyPrint
option if it is supported (which depends on your MATLAB version).
The demo.m
script shows example usage.
>> demo
Original string:
{
// One-line comment
"foo": "bar", // One-line comment at end of line
/*
Multiline comment
*/
"singleLinerInString": "//",
"multilinerInString": "/*",
"*/": "baz"
}
String without comments:
{
"foo": "bar",
"singleLinerInString": "//",
"multilinerInString": "/*",
"*/": "baz"
}
recoveredData =
struct with fields:
foo: 'bar'
singleLinerInString: '//'
multilinerInString: '/*'
x__: 'baz'
Data re-encoded to JSON:
{
"foo": "bar",
"singleLinerInString": "//",
"multilinerInString": "/*",
"x__": "baz"
}
But why?
The JSON standard does not allow for comments. However, it is often convenient to allow for them when using JSON as a markup language for configuration files and the likes. Hence the need for the not-quite-official JSON+C variant.
Although there is already a similar implementation on the MATLAB file exchange, that relies on an external JSON parser and requires you to compile it with MEX for your target platform(s). This is a much more lightweight alternative implemented in "vanilla" MATLAB.
Cite As
Sean Bone (2024). JSON+C parsing for MATLAB (https://github.com/seanbone/matlab-json-c/releases/tag/v1.1), GitHub. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
+jsonc
Version | Published | Release Notes | |
---|---|---|---|
1.1 | See release notes for this release on GitHub: https://github.com/SeanBone/matlab-json-c/releases/tag/v1.1 |
||
1.0 |