Filter löschen
Filter löschen

problem with the function "fread"

6 Ansichten (letzte 30 Tage)
Antonis Koutsis
Antonis Koutsis am 15 Jan. 2021
Beantwortet: Jeremy Hughes am 15 Jan. 2021
i have to read a .txt file , given by my professor, and i wrote the following code
fid=fopen('shannon_odd.txt','r'); %open file
x=fread(fid,'*char'); %read file chars
binary = dec2bin(x,8); %char->binary
binary_t=transpose(binary);
binf=binary_t(:)-'0'; %vector of binary bits of file
binf=binf.';
and when i run the program, this error came at command window:
  2 Kommentare
Ive J
Ive J am 15 Jan. 2021
Is your text file within current working directory?
Antonis Koutsis
Antonis Koutsis am 15 Jan. 2021
it was the first thing that i had checked before i post this

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jeremy Hughes
Jeremy Hughes am 15 Jan. 2021
The error indicates that fopen returned an invalid file ID.
Try this:
[fid,msg] = fopen(filename)
if fid < 0
error(msg)
end
More than likely, the file is not in the current working directory. try
which('shannon_odd.txt')
That will show you if the file is being found, if it doesn't give a result, you'll need to provide the full path to the file.
HTH

Kategorien

Mehr zu Low-Level File I/O 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