How to use fwrite with a format subject to change

Hi,
I have a basic question: I am doing multiple SQL queries and exporting the result to text files. I want to use fwrite to export the data but the number of variables and the data types are liable to change between queries. How could I build a script sufficiently flexible to handle that ?
var_a = {'T1','T1','T1','T1'}';
var_b = [2,2,2,2]';
var_c = {'A','A','A','A'}';
var_d = [8.12,7.67,5.90,3.81]';
t = table(var_a, var_b, var_c, var_d)
file_format = ['%s %d %s %f\n'];
y = table2cell(t).';
fid = fopen('test.txt', 'wt');
fprintf(fid, file_format, y{:});
fclose(fid);
Thank you,

Answers (1)

Since you're already storing your data in a table array, why not just use writetable?

1 Comment

Because things like writetable and writecell are really slow and fwrite is much faster. This matters depending on the number of SQL queries and the size of the files

Sign in to comment.

Tags

Asked:

on 7 Dec 2020

Commented:

on 7 Dec 2020

Community Treasure Hunt

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

Start Hunting!