【问题标题】:How to do back conversion如何进行反向转换
【发布时间】:2016-08-17 22:46:08
【问题描述】:

为了将 std::wstring 转换为 UTF-8,我使用以下代码:

std::wstring my_wide_string = L"my_sqlite_db.db";
std::wstring_convert<std::codecvt_utf8<wchar_t> > myconv;
myconv.to_bytes( my_wide_string.c_str() );

现在,我需要进行反向转换,即 UTF-8 到 std::wstring

切换转换器的正确方法是什么?

【问题讨论】:

  • 这里绝对没有研究工作的证据。是什么阻止了您查阅文档?
  • std::wstring_convert::to_bytes() 接受std::wstring 作为输入,因此无需调用c_str()

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


【解决方案1】:

为什么不直接使用from_bytes() 反向功能:

std::wstring test = myconv.from_bytes(myutf8);

Live demo

【讨论】:

    猜你喜欢
    • 2013-04-28
    • 2020-07-17
    • 2019-08-28
    • 2017-10-06
    • 1970-01-01
    • 2022-01-12
    • 2015-02-27
    • 2021-07-30
    • 2015-04-17
    相关资源
    最近更新 更多