I need a C# implementation of something similar with ByteBuffer from Java. Methods of interest - .remaining() - returns the number of elements between the current position and the limit. - .array() - .clear() - .put(byte[], int, int)
I started something with MemoryStream.. but no clear(), and a lot of improvisation
Also, i found a c# implementation on Koders: http://www.koders.com/csharp/fid2F8CB1B540E646746D3ADCB2B0AC867A0A8DCB06.aspx?s=socket#L2.. which I will use.. but maybe you guys know something better
MemoryStream can do everything you want:
.array() => .ToArray()
.clear() => .SetLength(0)
.put(byte[], int, int) => .Write(byte[], int, int)
.remaining() => .Length - .Position
If you want, you can create extension methods for Clear and Remaining:
public static class MemoryStreamExtensions
{
    public static void Clear(this MemoryStream stream)
    {
        stream.SetLength(0);
    }
    public static int Remaining(this MemoryStream stream)
    {
        return stream.Length - stream.Position;
    }
}
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With