簡體   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