1>Utility.obj : error LNK2001: 无法解析的外部符号 “__declspec(dllimport) public: static class std::locale::id std::codecvt<char16_t,char,struct _Mbstatet>::id” (__imp_?id@?$codecvt@_SDU_Mbstatet@@@std@@2V0locale@2@A)
这是utf8和utf16互转的
使用c++11标准。
引入头文件如下:
#include <string>
#include <locale>
#include <codecvt>
编译的时候提示无法解析外部符号。他奶奶的,本人都可以定义到了,你头文件在哪里本人也知道了,你的无法解析让本人很不理解啊。
本人到底什么没给你弄好呢?
这个老婆太难侍候了,你们帮帮忙吧。
这是utf8和utf16互转的
使用c++11标准。
引入头文件如下:
#include <string>
#include <locale>
#include <codecvt>
编译的时候提示无法解析外部符号。他奶奶的,本人都可以定义到了,你头文件在哪里本人也知道了,你的无法解析让本人很不理解啊。
本人到底什么没给你弄好呢?
这个老婆太难侍候了,你们帮帮忙吧。
解决方案:20分
解决方案:20分
以下代码在VS2010下通过:
// codecvt_utf8_utf16 example #include <iostream> #include <locale> #include <string> #include <codecvt> int main () { std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>,wchar_t> conversion; std::string mbs = conversion.to_bytes( L"\u4f60\u597d" ); // ni hao (你好) // print out hex value of each byte: std::cout << std::hex; for (size_t i=0; i<mbs.length(); ++i) std::cout << int(unsigned char(mbs[i])) << "" ""; std::cout << ""\n""; return 0; } //e4 bd a0 e5 a5 bd //