我的公司使用这样的代码:
std::string(CT2CA(some_CString)).c_str()
我相信它将 Unicode 字符串(其类型为 CString)转换为 ANSI 编码,并且该字符串用于电子邮件的主题。但是,电子邮件的标头(包括主题)指示邮件客户端应将其解码为 unicode(这就是原始代码的做法)。因此,某些德语字符(如“ä ö ü”)将无法正确显示为标题。
无论如何,我可以将此标头放回 UTF8 并存储到 std::string 或 const char* 中吗?
我知道有很多更聪明的方法可以做到这一点,但我需要保持代码坚持其原始代码(即将标头作为 std::string 或 const char* 发送)。
提前致谢。
注意:这是“|”并不是 '&' !
*buffer++ = 0xC0 | (c >> 6);
*buffer++ = 0x80 | (c & 0x3F);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)