wxWidgets: wxString编码使用wxCSConv wxMBConv

wxWidgets: wxString encode using wxCSConv wxMBConv

本文关键字:wxCSConv wxMBConv 编码 wxString wxWidgets      更新时间:2023-10-16

我想将。html文件(wxString)编码为十六进制。我尝试通过

来实现这一点
data = wxString((const char*)html_stuff, wxCSConv(wxFONTENCODING_UTF8), sizeof (html_stuff));

谢谢!

您发布的代码正在从UTF8转换为unicode

http://docs.wxwidgets.org/2.9.2/classwx_string.html # 86 a2ec232912c97ed44ba34651d98123

UTF8使用1到3个字节来编码每个字符-它用于在HTML中发送文档,以便浏览器可以显示它们。Unicode使用2个字节来编码每个字符- wxString使用它。

我猜你想做的是将unicode wxString转换为UTF8。有很多不同的方法可以做到这一点。"最好"的方式取决于几个方面。最简单的方法是使用wxString::mb_str() http://docs.wxwidgets.org/2.8.9/wx_wxstring.html#wxstringmbstr

我建议你学习一些关于字符编码的知识。这是我对它的看法的链接