Quick way to write cell or cell array
Mostrar comentarios más antiguos
Hi -
I'm trying to write a cell array containing something like (to a file):
'A1' 'A2' 'A3'
[2291x1 double] [1424x1 double] [1545x1 double]
Is there any quick and easy way to do so?
I appreciate any suggestion.
Thank you
Pearl
Respuesta aceptada
Más respuestas (1)
Walter Roberson
el 25 de Ag. de 2012
MATLAB is a bit weak on routines to write cell arrays all at one time. But you can use something like this:
headers = YourCell(1,:);
header_format = '%.15s %.15s %.15s\n';
values = cell2mat(YourCell(2,:));
numcols = size(values,2);
value_format = [ repmat('%.15g ', 1, numcols-1), '%.15g\n');
fout = fopen('YourFile.txt', 'wt');
fprintf(fout, header_format, headers{:});
fprintf(fout, value_format, values.'); %transpose is important!
fclose(fout);
2 comentarios
Pearl
el 25 de Ag. de 2012
Walter Roberson
el 25 de Ag. de 2012
NaN will be written to the file if you use the structure such as I showed.
In order to write in "columns", you need to define how you can tell columns apart, such as how you can tell whether there are one blank columns or two blank columns instead. When that is defined we can help write the code.
Categorías
Más información sobre Characters and Strings en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!