Saving a uitable contents for any number of columns.

조회 수: 1 (최근 30일)
Jason
Jason 2017년 3월 13일
편집: Brandon Eidson 2017년 3월 16일
I have the following code to save the contents of a uitable but for a fixed number of columns. How can I make it generic so it will work with any number of columns?
inputdata=(get(handles.uitableDark,'Data'))
%inputdata=cell2mat(inputdata)
[name,path] = uiputfile('C:\DarkFPN.txt','Save file name');
file=fullfile(path,name)
%save(file,'inputdata','-ascii');
fid = fopen(file,'wt');
if fid > 0
[nrows,ncols] = size(inputdata);
for row = 1:nrows
inputdata{row,:}
fprintf(fid,'%.0f %.2f %.2f %.2f %.2f\n',inputdata{row,:});
end
fclose(fid);
end
Thanks
Jason

채택된 답변

Brandon Eidson
Brandon Eidson 2017년 3월 16일
편집: Brandon Eidson 2017년 3월 16일
Hey Jason, assuming your various-column-numbered files have a repeatable format, you can create the FORMAT string based on your number of columns like in the code below.
[nrows, ncols] = size(inputdata);
formatString = '%.0f';
for col = 2:ncols
formatString = strcat(formatString, ' %.2f');
end
formatString = strcat(formatString, '\n');
Then you can pass "formatString" as an argument to the "fprintf" function.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Environment and Settings에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by