我的代码如下。创建BYTE数组,用一些sytes填充它,然后尝试读取它。阅读时,我收到了一个错误:
int imageSize = 1024;
BYTE* input = new BYTE[imageSize];
// input is filling by some bytes..
DataWriter ^writer = ref new DataWriter();
writer->WriteBytes(ArrayReference<BYTE>(input, imageSize));
IBuffer ^buffer = writer->DetachBuffer();
DataReader ^ reader = DataReader::FromBuffer(buffer);
auto res = reader->ReadString(buffer->Length); // THIS STRING THROW Platform::COMException ^
答案 0 :(得分:0)
字符串不能包含随机数据 - 它们必须包含格式良好的Unicode代码点。我认为错误(你不包括)说:
HRESULT:0x80070459目标多字节代码页中不存在Unicode字符的映射。
从您的变量名称(imageSize
)来看,您似乎正在尝试加载位图数据,这不是有效的字符串。