繁体   English   中英

C#套接字MemoryStream

[英]C# Sockets MemoryStream

所以我试图调用一个将整数转换为4个字节的方法,

转换是这样写的 -

    public void put4(int var1)
    {
        this.payload[++this.offset - 1] = (byte)(var1 >> 24);
        this.payload[++this.offset - 1] = (byte)(var1 >> 16);
        this.payload[++this.offset - 1] = (byte)(var1 >> 8);
        this.payload[++this.offset - 1] = (byte)var1;
    }

哪个放

var1

分为4个字节

但是我该如何与memorystream一起使用呢?

我知道我可以用

  MemoryStream ms = new MemoryStream();

  ms.WriteByte(1);

但我想以4个字节发送“ 1”

我尝试过的是

 ms.WriteByte.put4(1);

我很难对你说实话,因为我不熟悉网络或字节,但我所知道的是,这个特定的整数需要以4个字节发送而不是单个字节。

有几种方法可以执行此操作,即可以使用BinaryWriter

但是,要回答有关MemoryStream

BitConvert.GetBytes(Int32)已

以字节数组的形式返回指定的32位有符号整数值。

var bytes = BitConvert.GetBytes(someInt);

stream.Write(bytes,0,bytes.Length);

注意 :您必须小心使用的平台和字节序

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM