流级别的字符编码

时间:2013-06-23 18:25:42

标签: c++ string unicode encoding stream

最后读了很多关于编码的信息我很困惑! 我将我的困惑归结为两个问题:

  1. encodingstream是否有encoding?我的意思是,设置stream的{​​{1}}有什么意义吗?或者流完全没有意识到编码?

  2. 如果streams不知道encoding,那么std::localestd::imbue的主要目的是什么?

1 个答案:

答案 0 :(得分:1)

  1. 不,不是真的。尽管通过std::basic_filebuf<CharT>执行的所有文件I / O操作都使用流中嵌入的语言环境的std::codecvt<CharT, char, std::mbstate_t>方面。

  2. std::basic_ios::imbue的主要目的是使流以依赖于语言环境的方式格式化内容。例如小数分隔符,千位分隔符等。