Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
C#±à³Ì socket±à³ÌÖ®udp·þÎñÆ÷¶ËºÍ¿Í»§¶Ë
 
ÄÂÐþÀÅ
  5672  次浏览      27
 2020-12-1 
 
±à¼­ÍƼö:

±¾ÎÄÖ÷Òª½²½âÁËsocket±à³ÌÖ®udp·þÎñÆ÷¶ËºÍ¿Í»§¶ËµÄÔ­Àí£¬¼°´úÂëʵÏÖ¡£
±¾ÎÄÀ´×ÔÓÚ²©¿ÍÔ°£¬ÓÉ»ðÁú¹ûAnna±à¼­ÍƼö

»ùÓÚUdpЭÒéÊÇÎÞÁ¬½ÓģʽͨѶ£¬Õ¼ÓÃ×ÊÔ´ÉÙ£¬ÏìÓ¦Ëٶȿ죬ÑÓʱµÍ¡£ÖÁÓÚ¿É¿¿ÐÔ£¬¿Éͨ¹ýÓ¦ÓòãµÄ¿ØÖÆÀ´Âú×ã¡£(²»¿É¿¿Á¬½Ó)

ʹÓÃUdpЭÒéͨѶÐèÒª¾ß±¸ÒÔϼ¸¸öÌõ¼þ£º

(1).½¨Á¢Ò»¸öÌ×½Ó×Ö(Socket)

(2).°ó¶¨·þÎñÆ÷¶ËIPµØÖ·¼°¶Ë¿ÚºÅ--·þÎñÆ÷¶Ë

(3).ͨ¹ýSendTo()·½·¨ÏòÖ¸¶¨Ö÷»ú·¢ËÍÏûÏ¢ (ÐèÌṩÖ÷»úIPµØÖ·¼°¶Ë¿Ú)

(4).ͨ¹ýReciveFrom()·½·¨½ÓÊÕÖ¸¶¨Ö÷»ú·¢Ë͵ÄÏûÏ¢ (ÐèÌṩÖ÷»úIPµØÖ·¼°¶Ë¿Ú)

ÏÂÃæÓôúÂëʵÏÖ¼òµ¥µÄ·þÎñÆ÷---¿Í»§¶ËͨÐÅ

·þÎñÆ÷¶Ë£º

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace _023_socket±à³Ì_UDPЭÒé_·þÎñÆ÷¶Ë {
class Program
{
private static Socket udpServer;
static void Main(string[] args) {
//1,´´½¨socket
udpServer = new Socket (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
//2,°ó¶¨ip¸ú¶Ë¿ÚºÅ
udpServer.Bind( new IPEndPoint ( IPAddress.Parse("192.168.1.101") ,7788 ) );

//3£¬½ÓÊÕÊý¾Ý
new Thread(ReceiveMessage){ IsBackground = true}.Start();
Console.WriteLine("·þÎñÆ÷Æô¶¯...");
Console.ReadKey();
}

static void ReceiveMessage()
{
while (true)
{
EndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0);
byte[] data = new byte[1024];
int length = udpServer.ReceiveFrom (data, ref remoteEndPoint);//Õâ¸ö·½·¨»á°ÑÊý¾ÝµÄÀ´Ô´(ip:port)·Åµ½µÚ¶þ¸ö²ÎÊýÉÏ
string message = Encoding.UTF8.GetString(data, 0, length);
Console.WriteLine("´Óip£º" + (remoteEndPoint as IPEndPoint).Address.ToString() + "£º" + (remoteEndPoint as IPEndPoint).Port + "ÊÕµ½ÁËÊý¾Ý£º" + message);
}

}
}
}

¿Í»§¶Ë£º

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;

namespace _002_socket±à³Ì_udpЭÒé_¿Í»§¶Ë {
class Program {
static void Main(string[] args) {
//´´½¨socket
Socket udpClient = new Socket (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

while (true)
{
//·¢ËÍÊý¾Ý
EndPoint serverPoint = new IPEndPoint(IPAddress.Parse("192.168.1.101"), 7788);
string message = Console.ReadLine();
byte[] data = Encoding.UTF8.GetBytes(message);
udpClient.SendTo(data, serverPoint);
}


udpClient.Close();
Console.ReadKey();
}
}
}

Ö´Ðйý³Ì£º

£¨1£©Æô¶¯·þÎñÆ÷

£¨2£©Æô¶¯¿Í»§¶Ë£¬²¢Ïò·þÎñÆ÷·¢ËÍÊý¾Ý

·ÖÀà: unity3Dѧϰ

   
5672 ´Îä¯ÀÀ       27
 
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
 
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
 
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]
 
×îÐÂÎÄÕÂ
.NET Core 3.0 Õýʽ¹«²¼£ºÐÂÌØÐÔÏêϸ½â¶Á
.NET Core²¿ÊðÖÐÄã²»Á˽âµÄ¿ò¼ÜÒÀÀµÓë¶ÀÁ¢²¿Êð
C# eventḬ̈߳²È«
¼òÎö .NET Core ¹¹³ÉÌåϵ
C#¼¼ÊõÂþ̸֮À¬»ø»ØÊÕ»úÖÆ(GC)
×îпγÌ
.NetÓ¦Óÿª·¢
C#¸ß¼¶¿ª·¢¼¼Êõ
.NET ¼Ü¹¹Éè¼ÆÓëµ÷ÊÔÓÅ»¯
ASP.NET Core Web ¿ª·¢
ASP.Net MVC¿ò¼ÜÔ­ÀíÓëÓ¦Óÿª·¢
³É¹¦°¸Àý
º½Ìì¿Æ¹¤¼¯ÍÅ×Ó¹«Ë¾ DotNetÆóÒµ¼¶Ó¦ÓÃÉè¼ÆÓ뿪·¢
ÈÕÕÕ¸Û¼¯ .NET Framewor
Éñ»ªÐÅ .NETµ¥Ôª²âÊÔ
̨´ïµç×Ó .NET³ÌÐòÉè¼ÆÓ뿪·¢
Éñ»ªÐÅÏ¢ .NETµ¥Ôª²âÊÔ