如何将内存流数据转换为字节数组

时间:2017-05-02 11:34:15

标签: c# memorystream

我的浮动数据为33m / s。我将它们存储在Memory Stream中,以便我可以计算存储数据的平均值。但是,我设法通过使用它来将浮点数据堆叠到内存流中。

    byte[] FloatToByte = System.BitConverter.GetBytes(SomeData);
    memoryStream.Write(FloatToByte, 0, FloatToByte.Length);

现在我的问题是我想得到堆叠1秒的浮点数据,这会给我33个浮点数据堆叠在内存流中。我想计算33个浮点数据的平均值。那么我如何才能从内存流中获取33个浮点数据呢?有人可以帮忙吗?谢谢

更新 我设法解决了这个问题。谢谢你刚才写的答案。我通过使用队列来处理问题。我想知道为什么我试图使用内存流。第一个回答的人抓住了我的心,谢谢你。对于那些可能像我一样苦苦挣扎的人,我会在下面发布一些代码。

     QueueForMicLeft.Enqueue(MicLeft_data);
            if(QueueForMicLeft.Count> 30)
            {
                AverageOfMicLeftData(QueueForMicLeft);
                Console.WriteLine("Average_data = " + AverageOfMicLeftData(QueueForMicLeft));
                QueueForMicLeft.Dequeue();
            }

    public static float AverageOfMicLeftData(IEnumerable<float> Collection)
    {
        float sum = 0;
        foreach (float obj in Collection)
            sum += obj;

        return (sum /30);
    }

0 个答案:

没有答案