Memory allocation for a file
Show older comments
Hi All,
Is there a way that I can pre-allocate memory for a file? If vector elements are being assigned values in a for loop, for example, we pre-allocate memory by create the vector containing zeros. Is there some thing similar that can be done for a file being written into inside a for loop?
I open the file using fopen. Then I initiate a for loop to write data into it using fwrite and then close the file using fclose. So, I was wondering if it is possible to pre-allocate a chunk of memory for the file in an attempt to speed things up.
Thanks.
- RN
Answers (1)
Walter Roberson
on 25 Feb 2011
1 vote
Yes. Use fseek() to seek forward to the position of the last byte you want, and write a byte there, and then fseek() back to the beginning.
Categories
Find more on Performance and Memory 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!