C#中Socket通信用法实例详解

2019-12-26 13:33:16丽君
  • while (true)  { 
  • //在套接字上接收客户端发送的信息   bufLen = 0; 
  • try  { 
  • bufLen = s.Receive(buffer);  if (bufLen == 0) 
  • {  break; 
  • }  content += System.Text.Encoding.Unicode.GetString(buffer, 0, bufLen); 
  • }  catch (Exception ex) 
  • {  break; ; 
  • }  } 
  • Send(s, content);  s = null; 
  • buffer = null;  clientep = null; 
  • Thread.CurrentThread.Abort();  } 

    客户端代码:

     

     
    1. void Send(string content)  { 
    2. byte[] data = new byte[1024];  newclient = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); 
    3. ie = new System.Net.IPEndPoint(System.Net.IPAddress.Parse(ipadd), port);//服务器的IP和端口  try 
    4. {  //因为客户端只是用来向特定的服务器发送信息,所以不需要绑定本机的IP和端口。不需要监听。 
    5. newclient.Connect(ie);  } 
    6. catch (System.Net.Sockets.SocketException e)  { 
    7. Console.WriteLine(e.ToString());  return; 
    8. }  int recv = newclient.Receive(data); 
    9. //连接服务器成功  string stringdata = System.Text.Encoding.Unicode.GetString(data, 0, recv);