Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

TCP, Send/Receive


Rekomendowane odpowiedzi

Opublikowano

Hej,
Chcę wysłać byte[] do Servera, a serwer ma je odebrać, z (int) zrobić byte[] i je wypisać.
Chodzi o to że gdy wysłam tablice byte[] to ona odbiera się w formie int.
Wysyłam ją w ten sposób:
 

byte[] bytes = new byte[] { 1, 2, 3, 8 };
ns.Write(bytes, 0, bytes.Length);


Odbieram tak:

byte[] bytes = new byte[ClientSocket.ReceiveBufferSize];

int BytesRead = networkStream.Read(bytes, 0, bytes.Length);

I teraz nie wiem jak przerobić tego inta na tablicę byte[]
Próbowałem tak:

int intValue;
byte[] intBytes = BitConverter.GetBytes(BytesToConvert);
if (BitConverter.IsLittleEndian)
{
   Array.Reverse(intBytes);
}
byte[] result = intBytes;

foreach (byte Byt in result)
{
   Console.WriteLine(Byt);
}

Lecz to mi zwraca:
0, 0, 0, 4 (gdy wysyłam: 1, 2, 3, 8)

Może mi ktoś powiedzieć jak to ogarnąć?
Pozdrawiam!

Opublikowano

int BytesRead = networkStream.Read(bytes, 0, bytes.Length);

BytesRead to ilość odebranych danych, a tablica, którą wysłałeś jest w bytes.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...