I'm getting an error and don't know how to fix it.

1 回表示 (過去 30 日間)
Rebekah Higgins
Rebekah Higgins 2021 年 5 月 13 日
コメント済み: David Fletcher 2021 年 5 月 13 日
So I'm averaging a bunch of data and instead of opening up all the files manually and such, I'm using a for loop. Here's what my code looks like.
close all;
clc;
for k=1:10
filename=sprintf('20.5in_%d.bin',k);
fid=fopen('filename','r');
data=fread(fid,[1,Inf],'single');
sum=sum+data;
end
Average=sum/10;
plot(data/max(data));
plot(Average/max(Average));
close all
However, I get this error when I try to run it.
Error using fread
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in in205 (line 6)
data=fread(fid,[1,Inf],'single');
I'm not sure what the problem is or how to fix it. If I don't use a loop it works so any help would be greatly appreciated!!!
close all;
clc;
fid=fopen('20.5in_1.bin','r');
data=fread(fid,[1,Inf],'single');
plot(data/max(data));
close all
^the code that works without the loop

採用された回答

David Fletcher
David Fletcher 2021 年 5 月 13 日
The filename is the name held in the variable, the file isn't called 'filename'
fid=fopen(filename,'r')
  2 件のコメント
Rebekah Higgins
Rebekah Higgins 2021 年 5 月 13 日
Thanks!!! That's such a simple mistake! I can't believe I didn't catch that!
David Fletcher
David Fletcher 2021 年 5 月 13 日
Easily done. I swear sometimes the brain sees what it thinks it should be seeing, and not what is actually there

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeFile Operations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by