此代码使用boost :: format从ascii文件中读取数据。客户拥有欧洲格式的数据 - 3,14159 - 我也需要能够阅读此内容。
在另一个功能中,它使用sscanf,我可以通过使用
使其成为欧洲
setlocale(LC_NUMERIC,“德语”);
但这似乎并没有给人留下深刻印象。
答案 0 :(得分:2)
我现在不知道如何使用boost :: format进行读取,但无论如何:要使用的boost :: format的语言环境被指定为格式构造函数的参数。例如:
#include <iostream>
#include <locale>
#include <boost/format.hpp>
int main()
{
std::locale en("en_US.UTF-8");
std::locale de("de_DE.UTF-8");
std::cout << boost::format("pi~=%1%",en)%3.141 << std::endl;
std::cout << boost::format("pi~=%1%",de)%3.141 << std::endl;
}