• Synchronous Client Socket Example


    using System;
    using System.Net;
    using System.Net.Sockets;
    using System.Text;
    
    public class SynchronousSocketClient {
    
        public static void StartClient() {
            // Data buffer for incoming data.
            byte[] bytes = new byte[1024];
    
            // Connect to a remote device.
            try {
                // Establish the remote endpoint for the socket.
                // This example uses port 11000 on the local computer.
                IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName())
                IPAddress ipAddress = ipHostInfo.AddressList[0];
                IPEndPoint remoteEP = new IPEndPoint(ipAddress,11000);
    
                // Create a TCP/IP  socket.
                Socket sender = new Socket(AddressFamily.InterNetwork, 
                    SocketType.Stream, ProtocolType.Tcp );
    
                // Connect the socket to the remote endpoint. Catch any errors.
                try {
                    sender.Connect(remoteEP);
    
                    Console.WriteLine("Socket connected to {0}",
                        sender.RemoteEndPoint.ToString());
    
                    // Encode the data string into a byte array.
                    byte[] msg = Encoding.ASCII.GetBytes("This is a test<EOF>");
    
                    // Send the data through the socket.
                    int bytesSent = sender.Send(msg);
    
                    // Receive the response from the remote device.
                    int bytesRec = sender.Receive(bytes);
                    Console.WriteLine("Echoed test = {0}",
                        Encoding.ASCII.GetString(bytes,0,bytesRec));
    
                    // Release the socket.
                    sender.Shutdown(SocketShutdown.Both);
                    sender.Close();
                    
                } catch (ArgumentNullException ane) {
                    Console.WriteLine("ArgumentNullException : {0}",ane.ToString());
                } catch (SocketException se) {
                    Console.WriteLine("SocketException : {0}",se.ToString());
                } catch (Exception e) {
                    Console.WriteLine("Unexpected exception : {0}", e.ToString());
                }
    
            } catch (Exception e) {
                Console.WriteLine( e.ToString());
            }
        }
        
        public static int Main(String[] args) {
            StartClient();
            return 0;
        }
    }
  • 相关阅读:
    MT【274】一道漂亮的不等式题
    MT【273】2014新课标压轴题之$ln2$的估计
    MT【272】更大的视野,更好的思路.
    MT【271】一道三角最值问题
    MT【270】含参绝对值函数最大之二
    MT【269】含参函数绝对值最大
    MT【268】投篮第一次很重要
    国内下载Git的连接地址
    django 取model字段的verbose_name值
    Django报错(NoReverseMatch at /admin/)
  • 原文地址:https://www.cnblogs.com/liuxinls/p/2909854.html
Copyright © 2020-2023  润新知