客户端:using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Net;
using System.Net.Sockets;namespace netSocketClient
{
    class Program
    {
        private static int sendData(Socket socketServer, byte[] data)
        {
            int dataTotal = 0;
            int size = data.Length;
            int dataLeft = size;
            int sent;            byte[] dataSize = new byte[4];
            dataSize = BitConverter.GetBytes(size);
            //sent = socketServer.Send(dataSize);            while (dataTotal < size)
            {
                sent = socketServer.Send(data, dataTotal, dataLeft, SocketFlags.None );
                dataTotal += sent;
                dataLeft -= sent;
            }
            return dataTotal;
        }        private static byte[] receiveData(Socket socketServer)
        {
            int dataTotal = 0;
            int recv;
            byte[] dataSize = new byte[4];            recv = socketServer.Receive(dataSize, 0, 4, 0);
            int size = BitConverter.ToInt32(dataSize,0);
            int dataleft = size;
            byte[] data = new byte[size];            while (dataTotal < size)
            {
                recv = socketServer.Receive(data, dataTotal, dataleft, 0);
                if (recv == 0)
                {
                    data = Encoding.Unicode.GetBytes("exit");
                    break;
                }
                dataTotal += recv;
                dataleft -= recv;
            }
            return data;
        }        static void Main(string[] args)
        {
            int Iport = 8080;
            string Shost = "127.0.0.1";//指定端口和IP
            byte[] data = new byte[1024];
            int sent;            IPAddress ipAddress = IPAddress.Parse(Shost);
            IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, Iport);//定义IPEndPoint对象。            Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            //使用Socket()构造函数创建套接字。            try
            {
                Console.WriteLine("Connecting....");
                socket.Connect(ipEndPoint);//连接到服务器。                data = receiveData(socket);
                string stringData = Encoding.Unicode.GetString(data);
                Console.WriteLine(stringData );                string message1 = "11211111111111";
                string message2 = "2121111111111111111111111111";
                string message3 = "312";
                string message4 = "41211111111111111111111111111111111111";
                string message5 = "5112111111111111111";                sent = sendData(socket,Encoding.Unicode.GetBytes(message1 ));
                sent = sendData(socket, Encoding.Unicode.GetBytes(message2));
                sent = sendData(socket, Encoding.Unicode.GetBytes(message3));
                sent = sendData(socket, Encoding.Unicode.GetBytes(message4));
                sent = sendData(socket, Encoding.Unicode.GetBytes(message5));                Console.WriteLine("Disconnecting from server...");
                socket.Shutdown(SocketShutdown.Both );
                socket.Close();
            }
            catch (ArgumentException e)
            {
                Console.WriteLine("ArgumentException:{0}", e);
            }
            catch (SocketException e)
            {
                Console.WriteLine("SocketException:{0}", e);
            }        }
    }
}
服务器:using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
using System.Net;
using System.Net.Sockets;namespace netSocketServer
{
    class Program
    {
        private static int sendData(Socket socketServer, byte[] data)
        {
            int dataTotal = 0;
            int size = data.Length;
            int dataLeft = size;
            int sent;            byte[] dataSize = new byte[4];
            dataSize = BitConverter.GetBytes(size);
            sent = socketServer.Send(dataSize);            while (dataTotal < size)
            {
                sent = socketServer.Send(data, dataTotal, dataLeft, SocketFlags.None );
                dataTotal += sent;
                dataLeft -= sent;
            }
            return dataTotal;
        }        private static byte[] receiveData(Socket socketServer)
        {
            int dataTotal = 0;
            int recv;
            byte[] dataSize = new byte[4];            recv = socketServer.Receive(dataSize, 0, 4, 0);
            int size = BitConverter.ToInt32(dataSize,0);
            int dataleft = size;
            byte[] data = new byte[size];            while (dataTotal < size)
            {
                recv = socketServer.Receive(data, dataTotal, dataleft, 0);
                if (recv == 0)
                {
                    data = Encoding.Unicode.GetBytes("exit");
                    break;
                }
                dataTotal += recv;
                dataleft -= recv;
            }
            return data;
        }        static void Main(string[] args)
        {
            int Iport = 8080;
            string Shost = "127.0.0.1";//指定端口和IP            byte[] data = new byte[1024];            IPAddress ipAddress = IPAddress.Parse(Shost);
            IPEndPoint ipEndPoint = new IPEndPoint(ipAddress, Iport);//定义IPEndPoint对象。            Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            //使用Socket()构造函数创建套接字。            socket.Bind(ipEndPoint);
            socket.Listen(0);//绑定与侦听。            Console.WriteLine("Wait for connect....");
            Socket clientSocket = socket.Accept();            IPEndPoint newclient = (IPEndPoint)clientSocket.RemoteEndPoint;
            Console.WriteLine("connected with {0} at port {1}", newclient.Address, newclient.Port);            string welcome = "Welcome to my test server";
            data = Encoding.Unicode.GetBytes(welcome);            int sent = sendData(clientSocket, data);            for (int i = 0; i < 10; i++)
            {
                data = receiveData(clientSocket);
                Console.WriteLine(Encoding.Unicode.GetString(data));
            }            Console.WriteLine("Disconnectd from {0}", newclient.Address);
            clientSocket.Close();
            socket.Close();
        } 
    }
}为什么得不到我想要的结果呢???
高手帮帮忙!!!!