"Error using fscanf"

5 Ansichten (letzte 30 Tage)
pizzaa
pizzaa am 19 Mai 2023
Kommentiert: pizzaa am 19 Mai 2023
i got error which saying "Invalid file identifier. Use fopen to generate a valid file identifier"
This is the code:
function [z] = Stereo( directory, imagename, numImages)
% ***********************************************************************
% Read the lights and directions:
% ***********************************************************************
lightfile = strcat( directory, '/', 'lights2.txt')
fid = fopen(lightfile, 'r');
numLights = 1;
numLights = fscanf(fid, '%d \n', [1]);
LightMatrix = [];
for i = 1:numLights
lightDir = fscanf(fid, '%f %f %f \n', [3]);
lightDir = lightDir/norm(lightDir);
lightMatrix(i,:) = lightDir;
end
this is the lights2.txt file
Can someone help me i m so curious about this. Bigh thanks for your help
  1 Kommentar
Stephen23
Stephen23 am 19 Mai 2023
Bearbeitet: Stephen23 am 19 Mai 2023
Replace this command
strcat( directory, '/', 'lights2.txt')
with
fullfile( directory, 'lights2.txt')
And forget about using FOPEN & FSCANF: just use READMATRIX to import that file data:
If you use FOPEN then always always always remember to FCLOSE afterwards!

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Askic V
Askic V am 19 Mai 2023
Bearbeitet: Askic V am 19 Mai 2023
You're getting this error because the path to your file is not correct.
this is where the problem is:
lightfile = strcat( directory, '/', 'lights2.txt')
Print/Display this variable to see the path to the file.
BTW, if your file is structured like in the posted image, I suggest to use readmatrix function instead of fopen and fscanf.
  3 Kommentare
pizzaa
pizzaa am 19 Mai 2023
can u help me with the code in using readmatrix
pizzaa
pizzaa am 19 Mai 2023
Nice ty so much

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Low-Level File I/O finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by