How do I write out mixed data to binary file without looping?
2 views (last 30 days)
Show older comments
I have a matrix of data I need to write out to a binary file. Each column needs to be written out with a different precision, but I need to write it out in a specific order, such that values of different precisions follow each other. For example: int8 real*4 int8 real*4 ...
Is is possible to do this without looping? [Maybe some combination of using the 'skip' option with fwrite() along with the fseek()?]
Thanks in advance for any insights. Justin
0 Comments
Answers (1)
Image Analyst
on 26 Jun 2014
Just use fwrite() to write out data of the proper class. You can write out all columns in a single fwrite() if there are not too many of them, otherwise put it in a loop. Don't be afraid of loops
fwrite(fid, '%d%f%d%f', uint8Var1, single1, uint8Var2, single2);
fwrite(fid, '%f', singleArrayOf1000elements);
See Also
Categories
Find more on Whos 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!