如何从 windows8 商店应用程序中的字节数组中获取流

How to get a stream from a byte array in a windows8 store app(如何从 windows8 商店应用程序中的字节数组中获取流)

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

本文标题为:如何从 windows8 商店应用程序中的字节数组中获取流

基础教程推荐