Saving a uitable to text file with variable number of columns

4 views (last 30 days)
Hi. I have a uitable that I populate with a variety of functions, each one has a different number of columns and colnames. I want to have a generic save function that will save regardless of the columns, and one where I can add the column names as a variable. This is my fixed column name approach. How do i adapt this for variable columns and column names.
%Save UI Table
tabledata = num2str(get(handles.uitable1,'data'));
fpath=get(handles.edit1,'String'); %get filepath from edit box
fname=get(handles.textFile,'String'); %get file name
ffull=[fpath,fname];
filename = 'C:\Output.txt';
fid = fopen(filename, 'w');
fprintf(fid, '%s\r\n', ffull);
rows=length(tabledata);
fprintf(fid,' %s %s %s %s %s %s %s\t\r\n', 'mean','mode','max','min','sd','min20','Dyn Range') %this part I want to be variable!!!!
for i = 1:rows
%tabledata(i,:)
% fprintf(fid, '%s\t %s\t %s\t %s\t %s\t %s\t %s\t \n', tabledata(i,:));
fprintf(fid, '%s\r\n', tabledata(i,:));
% fprintf(fid, '\r\n')
end
fclose(fid);
I also need to add that my table consists ofa mixture of strings and numbers by using a cell array.

Accepted Answer

Jan
Jan on 26 Sep 2016
You can use one of the many tools to export a cell to a text file from the file exchange:
  2 Comments
Jan
Jan on 28 Sep 2016
@Jason: Writing the headers to a text file is easy. Afterwards you can use one of the tools from the FEX to append the data.

Sign in to comment.

More Answers (1)

Jason
Jason on 26 Sep 2016
Edited: Jason on 26 Sep 2016
Ok, I have made some progress: Im still not able to assign the colnames properly though the the T??
tabledata = (get(handles.uitable1,'data'));
colnames=get(handles.uitable1,'columnname')
T = cell2table(tabledata,'VariableNames',colnames);
writetable(T,'output.dat')
I get the following:
colnames =
'File' 'mean(FG)' 'max(FG)' 'mean(BG)' 'Objects'
Error using cell2table (line 69)
'mean(FG)' is not a valid variable name.

Categories

Find more on Develop Apps Using App Designer 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!