Critical error in jsonencode....?
Show older comments
So, I think I have found an error in the way matlab's built in jsonencode() function works. If you create a struct with one field of doubles, and a double has a infinity value (inf or -inf) jsonencode will encode this without quotation ("") marks. Therefore if I put this through a JSON validator (https://jsonlint.com/) it fails. I am using JSONLab toolbox in the meantime, however it would be nice to work with the native matlab function. Here is the code for an example:
x(1).a = 'hello'
x(1).b = 12
x(2).a = 'bye'
x(2).b = -inf
example = jsonencode(x)
Which will then output:
[{"a":"hello","b":12},{"a":"bye","b":-Inf}]
Where infact the correct output should be:
[{"a":"hello","b":12},{"a":"bye","b":"-Inf"}]
Accepted Answer
More Answers (0)
Categories
Find more on JSON Format in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!