Hello
I try to run a matlab code for my data analysis and in the first step I get this error:
Error using textscan
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in import_data (line 38)
dataArray = textscan(fileID, formatSpec, endRow(1)-startRow(1)+1, 'Delimiter', delimiter, 'EmptyValue' ,NaN,'HeaderLines', startRow(1)-1, 'ReturnOnError',
false);
Error in Ions_Pimms (line 58)
[x,y,tof,bid] = import_data(fname);
I do not understand how should I resolve this problem. Can some one help me? Thanks.

 채택된 답변

Stephen23
Stephen23 2016년 1월 14일
편집: Stephen23 2016년 1월 14일

1 개 추천

Basically this means that fopen did not manage to open any file, and returned an error value instead of a valid file identifier. Usually this error occurs because no such file exists at the location with the name that the user passed to fopen. Alternatively that they have not passed any path information to fopen, which will then look only in the current directory.
The first step is to check the error code of fopen, and see what value it has. The fopen documentation explains that "If fopen cannot open the file, then fileID is -1.", so you should check this value. You might also like to check the second output, which is an error message:
[fileID,errmsg] = fopen(...);
And of course check the input to fopen, and confirm that it is the (path+)name of an existing file in that location.

댓글 수: 2

Stephen23
Stephen23 2016년 1월 14일
편집: Stephen23 2016년 1월 14일
Like many programming questions there is no "right" answer. Is the file in the current directory, or elsewhere? Are you using relative or absolute paths? How are you specifying the input to fopen? What is the input string to fopen when the error occurs?
You actually need to tell us some information about the situation, otherwise I have to rely on guessing or reading your mind.
Farzaneh ziaee
Farzaneh ziaee 2016년 1월 14일
No it was not at that place. Thanks it was the issue I think :)

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Yuvasai Ayush
Yuvasai Ayush 2023년 5월 31일

0 개 추천

The first step is to check the error code of fopen, and see what value it has. The fopen documentation explains that "If fopen cannot open the file, then fileID is -1.", so you should check this value. You might also like to check the second output, which is an error message:Basically this means that fopen did not manage to open any file, and returned an error value instead of a valid file identifier. Usually this error occurs because no such file exists at the location with the name that the user passed to fopen. Alternatively that they have not passed any path information to fopen, which will then look only in the current directory.
[fileID,errmsg] = fopen(...);

카테고리

도움말 센터File Exchange에서 Low-Level File I/O에 대해 자세히 알아보기

태그

질문:

2016년 1월 14일

답변:

2023년 5월 31일

Community Treasure Hunt

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

Start Hunting!

Translated by