本文介绍了如何从 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?

推荐答案

您可以使用 DataWriterDataReader 类.比如……

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 商店应用程序中的字节数组中获取流的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-28 19:57