フィルターのクリア

fopen problem How does it work?

3 ビュー (過去 30 日間)
André Luiz Regis Monteiro
André Luiz Regis Monteiro 2014 年 2 月 10 日
コメント済み: Image Analyst 2014 年 2 月 11 日
I have a file VarName3.txt like this:
[2.281000003
2.593500003
2.749750003
3.062250003
3.062250003...
and negative values too. It is 1x1000.
The code I am using is:
fid=fopen('VarName3.txt','r');
atensao=fread(fid,'float');
fclose(fid);
When I type in Comand Window to check atensao, the answer is:
1.0e-03 *
0.0425
0.0000
0.0000
0.0006
0.0000...
Why it doesn't work? What am I doing wrong? Could someone teach me? Thanks a lot.

採用された回答

dpb
dpb 2014 年 2 月 10 日
fid=fopen('VarName3.txt','r');
atensao=fread(fid,'float');
fclose(fid);
Surprising got anything that reasonable. If the input file is actually an ASCII text file, then use fscanf instead of fread. fread is for stream unformatted data, not formatted.
fid=fopen('VarName3.txt','r');
atensao=fscanf(fid,'%f');
fclose(fid);
Or use one of the higher-level routines--while deprecated by TMW, textread is awfully handy for such simple cases as it wraps the fopen/fclose in the call and returns an array rather than a cell for the much fancier textscan
atensao=textread('VarName3.txt');
even allowing to dispense with the format string for simple numeric data such as your case. See
doc textread
doc textscan
doc fscanf
for more details
  2 件のコメント
André Luiz Regis Monteiro
André Luiz Regis Monteiro 2014 年 2 月 11 日
編集済み: André Luiz Regis Monteiro 2014 年 2 月 11 日
Thank you "dpb". I really appreciated. But when I check "atensao" it shows me number like: 2.2810 instead of 2.281000003 (from original file VarName3.txt). Do you know how can I fix it? Thank you again.
Image Analyst
Image Analyst 2014 年 2 月 11 日

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2014 年 2 月 10 日
If you are reading text you should not be using fread() which is for reading binary files.
Have a look at fscanf(). Also have a look at textscan()
  1 件のコメント
André Luiz Regis Monteiro
André Luiz Regis Monteiro 2014 年 2 月 11 日
Thank you Walter Roberson. I used first option.

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

カテゴリ

Help Center および File ExchangeData Import and Export についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by