I have a .bin file (having only 0's and 1's). And I want to consider 2 bits of the data from the file at a time in an iterative manner till all of the digits are read.
1 view (last 30 days)
Show older comments
How Do I do it ?
Question Explanation :
Suppose I have text written in binary format as: 0010011110100111
I want to access two bits of data at a time. For example, first I need to access "00" and I'll perform another algortihm then I want to access "10" and so on till all the digits are read.
0 Comments
Answers (1)
Walter Roberson
on 1 Aug 2022
twobits = fread(fid, [1 2], 'uchar');
This will not be efficient. Unless you have reason to expect that you might run out of memory, read the entire file at the same time, reshape to two rows, and index the columns
3 Comments
Walter Roberson
on 1 Aug 2022
'uchar' always converts exactly one byte per entry. 'char' on the other hand scans the file the first time to try to figure out what encoding it uses, then rewinds and potentially reads multiple bytes per entry, if matlab guessed utf8 or similar and the current byte looks like it might be part of a multi byte sequence.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!