The only open modes that have an effect on string streams are std::ios_base::in, std::ios_base::out, std::ios_base::ate, and std::ios_base::app. They have more or less the same meaning that they have with file streams (see Section 30.3). The std::ios_base::binary open mode is irrelevant, because there is no conversion to and from the dependent file format of the operating system. The std::ios_base::trunc open mode is simply ignored.