JSON+C parsing for MATLAB

版本 1.1 (3.6 KB) 作者: Sean Bone
A simple parser for JSON with Comments written in MATLAB
49.0 次下载
更新时间 2022/3/2

JSON+C parsing for MATLAB

View matlab-json-c on File Exchange

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 native jsondecode. It filters the string you give it though jsonc.removeJSONComments before passing it to jsondecode.
  • jsonc.jsonEncode is a wrapper for MATLAB's native jsonencode. This tries to use the PrettyPrint 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.

引用格式

Sean Bone (2024). JSON+C parsing for MATLAB (https://github.com/seanbone/matlab-json-c/releases/tag/v1.1), GitHub. 检索来源 .

MATLAB 版本兼容性
创建方式 R2021a
兼容任何版本
平台兼容性
Windows macOS Linux
标签 添加标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.1

See release notes for this release on GitHub: https://github.com/SeanBone/matlab-json-c/releases/tag/v1.1

1.0

要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库