Azzera filtri
Azzera filtri

Write string and table (in that order) to text file

11 visualizzazioni (ultimi 30 giorni)
I need to write a string and a table to one text file. The string contains a description of the data in the table, but is not the headers for the table. I am using R2019a which I guess means the "Append" writetable option does not work? Please see my example data below:
% Load data
load cereal.mat;
table = table(Calories, Carbo, Cups, Fat, Fiber, Mfg, Name, Potass);
string = {'This is a string about the cereal table'};
filename = "dummyoutput.sfc";
% How I tried to do this (which does not work!)
fid = fopen(filename, 'w', 'n');
fprintf(fid, '%s', cell2mat(string))
fclose(fid);
writetable(table, filename, 'FileType', 'text', 'WriteVariableNames', 0, 'Delimiter', 'tab', 'WriteMode', 'Append')
I get this error (because 'WriteMode' was introduced in R2020a)
Error using writetable (line 155)
Wrong number of arguments.
Does anyone have a workaround for this?
Thanks!

Risposta accettata

Melissa Buechlein
Melissa Buechlein il 13 Lug 2020
I doubt this is the most efficent workaround, but it solved my issue.
writetable(table, filename, 'WriteVariableNames', 0,...
'FileType', 'text', 'Delimiter', 'space', 'QuoteStrings', false)
content = fileread(filename);
% Update the file
content = {cell2mat(header{:}); content};
% go back and remove empty lines
newcontent = regexprep(content, {'\r', '\n\n+'}, {'', '\n'});
% write the full file
writecell(newcontent, filename, 'FileType', 'text', 'QuoteStrings', false);

Più risposte (1)

Takumi
Takumi il 13 Lug 2020
Modificato: Takumi il 13 Lug 2020
  4 Commenti
Takumi
Takumi il 13 Lug 2020
Modificato: Takumi il 13 Lug 2020
How about writing in fprintf instead of writetable?
Melissa Buechlein
Melissa Buechlein il 13 Lug 2020
My output table is not all of the same format, so I cannot turn it into an array. I am also unfamiliar with how to make fprintf work with cells. However, I was able to come up with a work around! Thanks for your suggestions!

Accedi per commentare.

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by