converting an model.xml to model.json with cobra
22 views (last 30 days)
Show older comments
Hi,
I have build a model in Python in xml format and want to convert it to a json format so i can use it for visualization with Escher. I loaded the xml model in Matlab but I can only get it converted into a .mat file and get an error when I want to get json format model. I tried the following:
1. outmodel = writeCbModel(model, 'format','json', 'fileName', 'TestModel.json')
Error using writeCbModel (line 229)
Unknown file format
Error in MBA_testfile (line 35)
outmodel = writeCbModel(model, 'format','json', 'fileName', 'TestModel.json')
2. cobra.io.json.to_json(model)
Unable to resolve the name cobra.io.json.to_json.
Error in MBA_testfile (line 20)
cobra.io.json.to_json(model)
0 Comments
Answers (1)
Ishan Gupta
on 28 Jul 2022
MATLAB has a built in function called “jsonencode()” to convert a struct to a JSON string.
Also, when writing into a file using “fprintf()" function the file Identifier which you created as the variable “fid” should be passed as the first argument to the function.
The following code might help you :
targets = load('targets.mat').targets;
distractors = load('distractors.mat').distractors;
level_number='Level 3' %example of a level number
for y=1:12
JSONFILE_name= sprintf('%s_JSON%d.json',level_number,y);
fid=fopen(JSONFILE_name,'w')
s = struct("audioData", targets{y}, "DistractorData", distractors{y});
encodedJSON = jsonencode(s);
fprintf(fid, encodedJSON);
end
fclose('all');
Refer to the following Links:
On “jsonencode()” function:
On “fprintf()” fucntion:
0 Comments
See Also
Categories
Find more on JSON Format in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!