字节集合与java中的ByteBuffer类似

pul*_*988 8 c# java bytebuffer

我需要一个类似于Java的ByteBuffer的C#实现.感兴趣的方法 - .remaining() - 返回当前位置和限制之间的元素数量. - .array() - .clear() - .put(byte [],int,int)

我开始用MemoryStream...但是没有clear(),还有很多即兴创作此外,我在Koders上找到了ac#implementation:http://www.koders.com/csharp/fid2F8CB1B540E646746D3ADCB2B0AC867A0A8DCB06.aspx? s=socket#L2 ..我会使用..但也许你们知道更好的东西

Tho*_*que 31

MemoryStream 可以做你想做的一切:

  • .array() => .ToArray()
  • .clear() => .SetLength(0)
  • .put(byte[], int, int) => .Write(byte[], int, int)
  • .remaining() => .Length - .Position

如果需要,可以为Clear和创建扩展方法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;
    }
}
Run Code Online (Sandbox Code Playgroud)

  • @Paul,`new MemoryStream(int)` (2认同)