display file function crash

6 Ansichten (letzte 30 Tage)
Yu Liu
Yu Liu am 20 Okt. 2019
Kommentiert: Yu Liu am 22 Okt. 2019
%I want to display a file and according to the book, I wrote the display file function like below, but it always showed that 'something wrong happen'. I have no idea which I part I did the wrong programming.%
function DisplayFile(filename)
try
fid=fopen(filename);
if fid == -1
disp(sprintf('Unable to open file ''%s'' ',filename));
else
while ~feof(fid)
tline = fget1(fid);
disp(tline);
end
fclose(fid);
end
catch
fclose(fid);
disp('Something wrong happened');
end
  2 Kommentare
Steven Lord
Steven Lord am 21 Okt. 2019
Show us exactly how you call this function. What are you passing into it as input?
Yu Liu
Yu Liu am 22 Okt. 2019
Hello Steven, the function reads a text file and displays it on the command window. The input is the name of an existing file.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Daniel M
Daniel M am 20 Okt. 2019
Bearbeitet: Daniel M am 20 Okt. 2019
try
% some code here
x = 1:5;
for n = 0:4
y = x(n); % can't access x at position zero!
end
catch ex
% some code to handle it
errorlog = n;
rethrow(ex) % throw the error to view message
end
  2 Kommentare
Yu Liu
Yu Liu am 21 Okt. 2019
Hi Daniel, Thanks for your answer! I tried the codes and it returned 'Subscript indices must either be real positive integers or logicals'. I still have no idea which part goes wrong. Do you have any idea about it?
Daniel M
Daniel M am 21 Okt. 2019
If you run the above code in a script the error it throws should be:
Array indices must be positive integers or logical values.
Error in untitled27 (line 5)
y = x(n); % can't access x at position zero!
This tells you exactly what part goes wrong and where.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by