Reading file in binary format (double 64 pecision)

5 views (last 30 days)
I am trying to read a binary file (the attached one) with double 64 precision. Basically it is 64*1024 long, and contains intensity values (non-negative). I know I should use fread as such:
fid = fopen('sample_1_trace')
input1 = fread(fid,'double');
However, in the results obtained I am getting negative values. Can you please confirm whether I am reading the file the right way? Because if that is the case, the error may be in the file itself.
Note: I tried to attached the file, but I could not due to format restriction.

Accepted Answer

Walter Roberson
Walter Roberson on 16 Jan 2017
Try
fid = fopen('sample_1_trace', 'ieee-be')

More Answers (1)

Wilson A N
Wilson A N on 16 Jan 2017
I tried writing a binary file with both negative and positive values. Then I tried reading the binary file using fread just as you have mentioned. I got the values correctly as I have written to the binary file.

Categories

Find more on Data Import and Analysis in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!