5

Windows.Storage.Streams.IRandomAccessStreamに変換するにはどうすればよいSystem.IO.Streamですか?

入力として受け入れる C# ライブラリを使用してSystem.IO.Streamいますが、Metro でファイルを開くとWindows.Storage.Streams.IRandomAccessStream.

4

2 に答える 2

16

最も簡単な方法は、 を呼び出すことAsStreamです。

于 2012-11-30T02:42:48.473 に答える
7

Windows.Storage.Streams.IRandomAccessStreamに変換してから、にbyte[]変換できます。byte[]System.IO.Stream

IRandomAccessStreamからのByte[]

        var file = await new FileOpenPicker().PickSingleFileAsync();
        var fStream = await file.OpenAsync(FileAccessMode.Read);

        var reader = new DataReader(fStream.GetInputStreamAt(0));
        var bytes = new byte[fStream.Size];
        await reader.LoadAsync((uint)fStream.Size);
        reader.ReadBytes(bytes);

Byte[]からのストリーム

var stream = new MemoryStream(bytes);
于 2012-11-29T22:18:11.200 に答える