• Advertisement
Sign in to follow this  

getting the size of an input stream

This topic is 3574 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Is there a way to get the size of an istream so I can allocate enough memory straight away rather than reallocate say another 64 bytes at a time during copying?

Share this post


Link to post
Share on other sites
Advertisement
You can use istreambuf_iterators to automagically load an entire istream into a buffer without needing to manually resize it. Ex:

std::istream & istr = get_an_istream_somehow();
std::vector<char> buffer( (std::istreambuf_iterator<char>(istr)),
(std::istreambuf_iterator<char>()) );

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement