read I/Q data from binary file

45 views (last 30 days)
abhinibesh
abhinibesh on 25 Feb 2014
Answered: Walter Roberson on 25 Feb 2014
1st ques: How can I read from a binary file, byte by byte?? 2nd ques: How can I read from a binary file, 2 bytes at a time??

Answers (1)

Walter Roberson
Walter Roberson on 25 Feb 2014
fid = fopen('YourFile.bin', 'r'); %for read
data_by_one = fread(fid, '*uint8'); %read it a byte at a time
frewind(fid); %go back to the beginning
data_by_two = fread(fid, '*uint16'); %read two bytes at a time
frewind(fid); %go back to the beginning
data_by_two_swapped = fread(fid, '*uint16', 'ieee-be'); %two bytes at a time, big-ended
fclose(fid);
The default for two-byte integers is "little-ended", where the file has PQ where in memory the value would be (256 * Q + P). Reading 'big-ended' would read bytes PQ as representing (256 * P + Q), the way that God intended ;-)

Categories

Find more on Large Files and Big Data in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!