gpt4 book ai didi

C++:如何将 ASCII 或 ANSI 转换为 UTF8 并存储在 std::string 中

转载 作者:太空狗 更新时间:2023-10-29 19:58:35 26 4
gpt4 key购买 nike

我的公司使用这样的代码:

    std::string(CT2CA(some_CString)).c_str()

我相信它将 Unicode 字符串(其类型为 CString)转换为 ANSI 编码,并且该字符串用于电子邮件的主题。但是,电子邮件的 header (包括主题)表明邮件客户端应将其解码为 un​​icode(原始代码就是这样做的)。因此,某些德语字符(如“ä ö ü”)将无法正确显示为标题。

我是否可以将此 header 放回 UTF8 并存储到 std::string 或 const char* 中?

我知道有很多更聪明的方法可以做到这一点,但我需要保持代码坚持其原始代码(即将 header 作为 std::string 或 const char* 发送)。

提前致谢。

最佳答案

注意:是'|'而不是“&”!

*buffer++ = 0xC0 | (c >> 6);
*buffer++ = 0x80 | (c & 0x3F);

关于C++:如何将 ASCII 或 ANSI 转换为 UTF8 并存储在 std::string 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20275824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com