【问题标题】:UTF8 conversion wxString::ToStdString()UTF8 转换 wxString::ToStdString()
【发布时间】:2014-10-31 04:54:36
【问题描述】:

我正在编写应用程序并使用 wxWidgets 作为 GUI 后端。应用程序的核心部分使用std::string 和UTF8 作为编码。我需要理智的方式在wxStringstd::string 之间进行转换。我知道wxString::ToUTF8(),但使用起来有些尴尬(我认为效率低下,因为它返回一些代理对象)。有一个更好的方法wxString::ToStdString() 但是,如果我理解正确,它使用当前的语言环境编码。有没有办法全局配置 wxWidgets,使其在 wxString 和窄字符(const char*std::string)之间转换时使用 UTF8 编码?

【问题讨论】:

    标签: c++ c++11 utf-8 wxwidgets


    【解决方案1】:

    不,没有办法做到这一点,您必须使用ToUTF8() 或等效的utf8_str() 编写自己的辅助函数。从某种意义上说,这将是低效的,因为每次调用它都需要从 UTF-32 或 UTF-16 进行转换,但这不太可能成为瓶颈。

    【讨论】:

      猜你喜欢
      • 2021-08-14
      • 2013-03-22
      • 1970-01-01
      • 2013-12-04
      • 1970-01-01
      • 1970-01-01
      • 2011-08-02
      • 2021-06-21
      • 1970-01-01
      相关资源
      最近更新 更多