C# Udp Socket例子


服务器端:

C# Udp Socket例子
C# Udp Socket例子using System;
C# Udp Socket例子
using System.Collections.Generic;
C# Udp Socket例子
using System.Text;
C# Udp Socket例子
using System.Net;
C# Udp Socket例子
using System.Net.Sockets;
C# Udp Socket例子
C# Udp Socket例子
namespace UDPServer
C# Udp Socket例子
{
C# Udp Socket例子    
class Program
C# Udp Socket例子    
{
C# Udp Socket例子        
static void Main(string[] args)
C# Udp Socket例子        
{
C# Udp Socket例子            
int recv;
C# Udp Socket例子            
byte[] data = new byte[1024]; 
C# Udp Socket例子
C# Udp Socket例子            
//构建TCP 服务器
C# Udp Socket例子
C# Udp Socket例子            
//得到本机IP,设置TCP端口号         
C# Udp Socket例子
            IPEndPoint ipep = new IPEndPoint(IPAddress.Any , 8001);
C# Udp Socket例子            Socket newsock 
= new Socket(AddressFamily.InterNetwork, SocketType.Dgram , ProtocolType.Udp);
C# Udp Socket例子
C# Udp Socket例子            
//绑定网络地址
C# Udp Socket例子
            newsock.Bind(ipep);
C# Udp Socket例子
C# Udp Socket例子            Console.WriteLine(
"This is a Server, host name is {0}",Dns.GetHostName());
C# Udp Socket例子
C# Udp Socket例子            
//等待客户机连接
C# Udp Socket例子
            Console.WriteLine("Waiting for a clientC# Udp Socket例子");
C# Udp Socket例子
C# Udp Socket例子            
//得到客户机IP
C# Udp Socket例子
            IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
C# Udp Socket例子            EndPoint Remote 
= (EndPoint)(sender);
C# Udp Socket例子            recv 
= newsock.ReceiveFrom(data, ref Remote);
C# Udp Socket例子            Console .WriteLine (
"Message received from {0}: ", Remote.ToString ());
C# Udp Socket例子            Console .WriteLine (Encoding .ASCII .GetString (data ,
0,recv ));
C# Udp Socket例子
C# Udp Socket例子            
//客户机连接成功后,发送欢迎信息
C# Udp Socket例子
            string welcome = "Welcome ! ";
C# Udp Socket例子
C# Udp Socket例子            
//字符串与字节数组相互转换
C# Udp Socket例子
            data  = Encoding .ASCII .GetBytes (welcome );
C# Udp Socket例子
C# Udp Socket例子            
//发送信息
C# Udp Socket例子
            newsock .SendTo (data ,data.Length ,SocketFlags .None ,Remote );
C# Udp Socket例子            
while (true )
C# Udp Socket例子            
{
C# Udp Socket例子                data 
=new byte [1024];
C# Udp Socket例子                
//发送接受信息
C# Udp Socket例子
                recv =newsock.ReceiveFrom(data ,ref Remote);
C# Udp Socket例子                Console .WriteLine (Encoding .ASCII .GetString (data ,
0,recv));
C# Udp Socket例子                newsock .SendTo (data ,recv ,SocketFlags .None ,Remote );
C# Udp Socket例子            }

C# Udp Socket例子        }

C# Udp Socket例子
C# Udp Socket例子    }

C# Udp Socket例子}

C# Udp Socket例子
C# Udp Socket例子

客户端:

C# Udp Socket例子
C# Udp Socket例子using System;
C# Udp Socket例子
using System.Collections.Generic;
C# Udp Socket例子
using System.Linq;
C# Udp Socket例子
using System.Text;
C# Udp Socket例子
using System.Net;
C# Udp Socket例子
using System.Net.Sockets;
C# Udp Socket例子
C# Udp Socket例子
namespace UDPClient
C# Udp Socket例子
{
C# Udp Socket例子    
class Program
C# Udp Socket例子    
{
C# Udp Socket例子        
static void Main(string[] args)
C# Udp Socket例子        
{
C# Udp Socket例子            
byte[] data = new byte[1024];
C# Udp Socket例子            
string input ,stringData;
C# Udp Socket例子
C# Udp Socket例子            
//构建TCP 服务器
C# Udp Socket例子

C# Udp Socket例子            Console.WriteLine(
"This is a Client, host name is {0}", Dns.GetHostName());
C# Udp Socket例子
C# Udp Socket例子            
//设置服务IP,设置TCP端口号
C# Udp Socket例子
            IPEndPoint ipep = new IPEndPoint(IPAddress .Parse ("127.0.0.1") , 8001);
C# Udp Socket例子
C# Udp Socket例子            
//定义网络类型,数据连接类型和网络协议UDP
C# Udp Socket例子
            Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
C# Udp Socket例子
C# Udp Socket例子            
string welcome = "Hello! ";
C# Udp Socket例子            data 
= Encoding.ASCII.GetBytes(welcome);
C# Udp Socket例子            server.SendTo(data, data.Length, SocketFlags.None, ipep);
C# Udp Socket例子            IPEndPoint sender 
= new IPEndPoint(IPAddress.Any, 0);
C# Udp Socket例子            EndPoint Remote 
= (EndPoint)sender;
C# Udp Socket例子
C# Udp Socket例子            data 
= new byte[1024];
C# Udp Socket例子            
//对于不存在的IP地址,加入此行代码后,可以在指定时间内解除阻塞模式限制
C# Udp Socket例子            
//server.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 100);
C# Udp Socket例子
            int recv = server.ReceiveFrom(data, ref Remote);
C# Udp Socket例子            Console.WriteLine(
"Message received from {0}: ", Remote.ToString());
C# Udp Socket例子            Console.WriteLine(Encoding .ASCII .GetString (data,
0,recv));
C# Udp Socket例子            
while (true)
C# Udp Socket例子            
{
C# Udp Socket例子                input 
= Console .ReadLine ();
C# Udp Socket例子                
if (input =="exit")
C# Udp Socket例子                    
break ;
C# Udp Socket例子                server .SendTo (Encoding .ASCII .GetBytes (input ),Remote );
C# Udp Socket例子                data 
= new byte [1024];
C# Udp Socket例子                recv 
= server.ReceiveFrom(data, ref Remote);
C# Udp Socket例子                stringData 
= Encoding.ASCII.GetString(data, 0, recv);
C# Udp Socket例子                Console.WriteLine(stringData);
C# Udp Socket例子            }

C# Udp Socket例子            Console .WriteLine (
"Stopping Client.");
C# Udp Socket例子            server .Close ();            
C# Udp Socket例子        }

C# Udp Socket例子
C# Udp Socket例子    }

C# Udp Socket例子}



本文转自94cool博客园博客,原文链接:http://www.cnblogs.com/94cool/archive/2011/09/03/2165807.html,如需转载请自行联系原作者
上一篇:运维前线:一线运维专家的运维方法、技巧与实践3.3 利用批处理与Shell脚本简化逻辑节点的搬迁


下一篇:年度大盘点 | 一文带你回顾阿里云边缘计算的2019