我想从std::string解析一个浮点值,其中十进制分隔符是".“。如何在分隔符为",“的区域中解析此类浮点数?我用的是std::stringstream。为了澄清:如何使用字符串强制en-US样式的浮点解析?
发布于 2014-08-29 23:13:45
您可以通过这种方式将整个程序的区域设置为基本的"C“之一:
setlocale(LC_NUMERIC, "C");
或者一条小溪:
std::locale c_locale("C");
my_stream.imbue(c_locale);
这将给你“老派”,非i18n解析和打印。您也可以尝试其他地区名称,但是保证在所有系统上可用的其中两个是"“和"C",而后者似乎适用于您的情况。
https://stackoverflow.com/questions/25579637
复制相似问题