473,471 Members | 4,687 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

Why std::ostringstream inserts number group delimeter and how to disable this mode?

Hello all!
std::ostringstream stream;
stream << 8080;
std::string str = stream.str(); // str == "8 080"
The code shown above in mine big program result the str variable value
to
contain thouzand digits space delimeter.
The same code in little sample I made result in "8080" string value. I
want
to ask where the digit delimeter came from?
And how can I disable it?

I'm using default STL shipped with VS 6.0 sp5.

Thanks in advance,
Voronkov Konstantin

Nov 22 '05 #1
1 2175
I got reply from other group:

"Ulrich Eckhardt" <ec******@satorlaser.com> wrote in message
news:<uf************@satorlaser.homedns.org>...
Voronkov Konstantin wrote:
std::ostringstream stream;
stream << 8080;
std::string str = stream.str(); // str == "8 080"
The code shown above in mine big program result the str variable value to
contain thouzand digits space delimeter.


This and several other such things depend on the locale. In order to get
locale-independent formatting, you should imbue() with the C locale:

std::ostringstream stream;
stream.imbue( std::locale::classic());
The same code in little sample I made result in "8080" string value. I
want to ask where the digit delimeter came from?


Someone set the locale from the default C locale to something else, probably
the one defined by the environment - this at least is the intended way it
should be done.
And how can I disable it?


Firstly, you shouldn't. Secondly, you can reset the global locale to the
default C locale with
std::locale::global( std::locale::classic());
I'm using default STL shipped with VS 6.0 sp5.


You don't mean STL but C++ standardlibrary. The STL never had anything but
containers, iterators and algorithms, so even the relaked interpretation of
that word is wrong here.

Uli


Nov 22 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
by: Eric Boutin | last post by:
Hi ! I have a strange problem with a std::ostringstream.. code : #include <sstream> /*...*/ std::ostringstream ss(); ss << "\"\"" << libpath << "\"\" \"\"" << argfilename << "\"\"...
3
by: Chris | last post by:
Hi, I'm playing/developing a simple p2p file sharing client for an existing protocol. A 2 second description of the protocol is Message Length = int, 4 bytes Message Code = int, 4 bytes...
6
by: Christopher Benson-Manica | last post by:
Is there anything that one can do to a std::ostringstream that would make its destructor explode? I'm basically doing { std::ostringstream ss, msg; // do BUNCHES of stuff with ss and msg ...
5
by: Simon Pryor | last post by:
I am having some strange problems using std::ostringstream. The simple stuff works okay, but trying to use: std::ostringstream::str(const std::string&) or:...
1
by: Jason Heyes | last post by:
I would like to have std::cout redirect its output to a std::ostringstream. Can this be done? Help is appreciated.
2
by: bob | last post by:
For reasons that are irrelevant , we cannot use sprintf to do conversions between doubles, ints etc. to char*. We're using the std::ostringstream type. Basically we have a function that takes a...
4
by: Olaf van der Spek | last post by:
Hi, I'm using ostringstream and I'd like to generate \r\n line ends instead of \n ones. Is there a flag for this? Or should I just insert the \r myself?
25
by: Bala2508 | last post by:
Hi, I have a C++ application that extensively uses std::string and std::ostringstream in somewhat similar manner as below std::string msgHeader; msgHeader = "<"; msgHeader += a; msgHeader...
2
by: mathieu | last post by:
Hi, I am playing with the following C++ piece of code (*). At least on my system debian/gcc 4.3 it looks like I am not writing out a floating point separator as a comma. what are the operation...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
1
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
0
muto222
php
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.