我知道我可以将IBuffer转换为Stream,然后从那里转换为IRandomAccessStream。但是必须有直接的方法。

最佳答案

IBuffer不是流,因此您需要一些东西来使另一个适应。在.NET中,您可以使用Stream

IBuffer buffer = ...;
IRandomAccessStream randomAccessStream = buffer.AsStream().AsRandomAccessStream();


如果您不愿意编写两个函数调用,则可以编写一个辅助函数。

static IRandomAccessStream AsRandomAccessStream(this IBuffer buffer)
{
    return buffer.AsStream().AsRandomAccessStream();
}


那你就可以

IBuffer buffer = ...;
IRandomAccessStream randomAccessStream = buffer.AsRandomAccessStream();

关于c# - 将IBuffer转换为IRandomAccessStream,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33879898/

10-09 00:20