Как передать массив через сокет? - C# (186257)
Формулировка задачи:
Подскажите пожалуйста.
Нужно реализовать игру крестики нолики, клиент-сервер.
Здесь я могу передать переменную message типа string, а как мне передать двумерный массив который будет содержать информацию о матрице?
// Буфер для входящих данных
byte[] bytes = new byte[1024];
// Соединяемся с удаленным устройством
// Устанавливаем удаленную точку для сокета
IPHostEntry ipHost = Dns.GetHostEntry("localhost");
IPAddress ipAddr = ipHost.AddressList[0];
IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, port);
Socket sender = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
// Соединяем сокет с удаленной точкой
sender.Connect(ipEndPoint);
Console.Write("Введите сообщение: ");
string message = Console.ReadLine();
Console.WriteLine("Сокет соединяется с {0} ", sender.RemoteEndPoint.ToString());
byte[] msg = Encoding.UTF8.GetBytes(message)
// Отправляем данные через сокет
int bytesSent = sender.Send(msg);
// Получаем ответ от сервера
int bytesRec = sender.Receive(bytes);Решение задачи: «Как передать массив через сокет?»
textual
Листинг программы
int[,] board = new int[3,3]; // .. byte[] buf = new byte[board.Length * sizeof(int)]; Buffer.BlockCopy(board, 0, buf, 0, buf.Length);