Can anyone tell me where I went wrong below that I get Invalid file identifier error? This code attempts to write data in different output files, where file name includes a number and strings.

조회 수: 1 (최근 30일)
ST = 14;
NR = 2
for r = 1:NR
file = fopen(['LadPos' int2str(ST+r) '.txt','w']);
fprintf([file,'Competition Ladder for Round' char(ST+r)]);
for i = 1:NT
fprintf(file,'%d %s %d\n',i,Classiclad(i,:),classic(i));
end
fclose(file);
....

답변 (2개)

Orion
Orion 2014년 11월 27일
You wrote
fprintf([file,'Competition Ladder for Round' char(ST+r)])
the [ ] are misplaced, it should be :
fprintf(file,['Competition Ladder for Round' char(ST+r)])

Image Analyst
Image Analyst 2014년 11월 27일
Try this:
ST = 14;
NR = 2
NT = 3
for r = 1:NR
baseFileName = sprintf('LadPos%d.txt', ST+r);
fullFileName = fullfile(pwd, baseFileName)
fileID = fopen(fullFileName, 'wt');
fprintf('Competition Ladder for Round %d', (ST+r));
fprintf(fileID, 'Competition Ladder for Round %d' (ST+r));
for i = 1 : NT
fprintf(1,'%d %s %d\n',i,Classiclad(i,:),classic(i));
fprintf(fileID,'%d %s %d\n',i,Classiclad(i,:),classic(i));
end
fclose(fileID);
end

카테고리

Help CenterFile Exchange에서 Numerical Integration and Differential Equations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by