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

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

What are the pros and cons of writing C#/XAML vs. C++/XAML WinRT applications in Windows8?(在 Windows8 中编写 C#/XAML 与 C++/XAML WinRT 应用程序的优缺点是什么?)
How to add header to HttpWebRequest in Windows8 applicaition?(如何在 Windows8 应用程序中向 HttpWebRequest 添加标头?)