将BYTE *转换为wstring?

时间:2013-06-12 06:49:53

标签: c++

您好如何将BYTE *转换为wstring?

我用谷歌搜索了它,但我找不到它。

BYTE* value = new BYTE[size];
wstring wstr;

我想为wstr赋值。怎么做?

1 个答案:

答案 0 :(得分:4)

假设您的字节数组是UTF-16编码的,您可以简单地将缓冲区转换为wchar_t*并将其传递给字符串的构造函数:

wstring wstr(reinterpret_cast<wchar_t*>(value), size/sizeof(wchar_t));

如果缓冲区包含空终止符,则需要从传递给构造函数的长度中减去该值。