Azzera filtri
Azzera filtri

saving a structure in mat file

1.009 visualizzazioni (ultimi 30 giorni)
genesis
genesis il 17 Lug 2013
Commentato: Matthew Creek il 23 Ago 2023
i have a few structures i want to save in mat file. eg
s(1).a = 'hello'; s(1).b = 99; s(2).a = 'bye'; s(3).b = 82;
i want to save structure s(1) and s(2) into a mat file. i did this, save('test_struct.mat',marker(1)); but it give me error, Argument must contain a string.
  3 Commenti
genesis
genesis il 17 Lug 2013
sorry it was save('test_struct.mat',s(1));
Jan
Jan il 17 Lug 2013
@genesis: And now you have seen David's answer, which explains, that you need the string 's' instead of the variable s(1). If this solves your problem, please accept his answer.

Accedi per commentare.

Risposta accettata

David Sanchez
David Sanchez il 17 Lug 2013
When using save, the name of the variable to be saved has to be a string:
s.name='ww';
s.age=22;
save('test.mat','s')
For structs, try the following, copied from matlab documentation:
Save the fields of structure s1 as individual variables. Check the contents of the file with the whos function. Clear the workspace and load the contents of a single field.
s1.a = 12.7;
s1.b = {'abc', [4 5; 6 7]};
s1.c = 'Hello!';
save('newstruct.mat', '-struct', 's1');
disp('Contents of newstruct.mat:')
whos('-file', 'newstruct.mat')
clear('s1')
load('newstruct.mat', 'b')

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by