本文介绍了如何从 windows8 商店应用程序中的字节数组中获取流的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我一直在尝试使用以下代码从 Metro 风格应用程序中的字节数组获取流.
I have been trying get a stream from a byte array in metro style app using the following code.
InMemoryRandomAccessStream memoryStream = new InMemoryRandomAccessStream();
memoryStream.AsStreamForWrite().Write(byteArray, 0, byteArray.Length);
memoryStream.Seek(0);
它执行时没有错误,但流大小为零 (0).谁能告诉我为什么它的大小为零?
It executes with no errors but stream size is zero (0). Can anybody tell me why is its size is zero?
推荐答案
您可以使用 DataWriter 和 DataReader 类.比如……
You can use the DataWriter and DataReader classes. For example ...
// put bytes into the stream
var ms = new InMemoryRandomAccessStream();
var dw = new Windows.Storage.Streams.DataWriter(ms);
dw.WriteBytes(new byte[] { 0x00, 0x01, 0x02 });
await dw.StoreAsync();
// read them out
ms.Seek(0);
byte[] ob = new byte[ms.Size];
var dr = new Windows.Storage.Streams.DataReader(ms);
await dr.LoadAsync((uint)ms.Size);
dr.ReadBytes(ob);
这篇关于如何从 windows8 商店应用程序中的字节数组中获取流的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!