zoukankan      html  css  js  c++  java
  • TcpListener 示例

    using System;
    using System.IO;
    using System.Net;
    using System.Net.Sockets;
    using System.Text;
    
    class MyTcpListener
    {
      public static void Main()
      { 
        TcpListener server=null;   
        try
        {
          // Set the TcpListener on port 13000.
          Int32 port = 13000;
          IPAddress localAddr = IPAddress.Parse("127.0.0.1");
    
          // TcpListener server = new TcpListener(port);
          server = new TcpListener(localAddr, port);
    
          // Start listening for client requests.
          server.Start();
    
          // Buffer for reading data
          Byte[] bytes = new Byte[256];
          String data = null;
    
          // Enter the listening loop.
          while(true) 
          {
            Console.Write("Waiting for a connection... ");
    
            // Perform a blocking call to accept requests.
            // You could also user server.AcceptSocket() here.
            TcpClient client = server.AcceptTcpClient();            
            Console.WriteLine("Connected!");
    
            data = null;
    
            // Get a stream object for reading and writing
            NetworkStream stream = client.GetStream();
    
            int i;
    
            // Loop to receive all the data sent by the client.
            while((i = stream.Read(bytes, 0, bytes.Length))!=0) 
            {   
              // Translate data bytes to a ASCII string.
              data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
              Console.WriteLine("Received: {0}", data);
    
              // Process the data sent by the client.
              data = data.ToUpper();
    
              byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);
    
              // Send back a response.
              stream.Write(msg, 0, msg.Length);
              Console.WriteLine("Sent: {0}", data);            
            }
    
            // Shutdown and end connection
            client.Close();
          }
        }
        catch(SocketException e)
        {
          Console.WriteLine("SocketException: {0}", e);
        }
        finally
        {
           // Stop listening for new clients.
           server.Stop();
        }
    
    
        Console.WriteLine("
    Hit enter to continue...");
        Console.Read();
      }   
    }
  • 相关阅读:
    关于二分操作的基本应用
    东北育才 d1t4 漂流
    东北育才 d1t1 优雅的序列
    从零开始的图的存储方法
    从零理解的KMP算法
    openjudge T017 黑社会团伙 (并查集)
    东北育才 day6
    poj3071 Football
    noip2015 跳石头
    noip2015 信息传递
  • 原文地址:https://www.cnblogs.com/yzl050819/p/6207139.html
Copyright © 2011-2022 走看看