display file function crash

7 visualizaciones (últimos 30 días)
Yu Liu
Yu Liu el 20 de Oct. de 2019
Comentada: Yu Liu el 22 de Oct. de 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 comentarios
Steven Lord
Steven Lord el 21 de Oct. de 2019
Show us exactly how you call this function. What are you passing into it as input?
Yu Liu
Yu Liu el 22 de Oct. de 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.

Iniciar sesión para comentar.

Respuestas (1)

Daniel M
Daniel M el 20 de Oct. de 2019
Editada: Daniel M el 20 de Oct. de 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 comentarios
Yu Liu
Yu Liu el 21 de Oct. de 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 el 21 de Oct. de 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.

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by