C#中的socket编程入门实例
Socket主要是通过TCP或者UDP协议进行多台主机之间的通讯。由于项目中用到,所以今天就结合项目需求对socket编程的C#表示进行一步一步详细的介绍。 TCP的详细过程我就不多介绍了,这个是网络基础,不明白的同学可以看TCP开启服务端对端口的监听我们都知道TCP服务端需要对某个端口进行连续监听,客户端才可以发起连接。所以我们先讲讲服务端如何打开端口进行监听。 新建一个控制台应用程序ServerConsole,引用System.Net和System.Net.Sockets。 代码如下:using System; using System.Collections.Generic; using System.Linq; using System.Text;
using System.Net; using System.Net.Sockets;
namespace ServerConsole {
class Program {
static void Main(string[] args) {
Console.WriteLine(\ IPAddress ip = IPAddress.Parse(\获取ip地址
TcpListener listener = new TcpListener(ip, 8500);
listener.Start();//开始监听
Console.WriteLine(\
Console.WriteLine(\输入 \\\键退出。\ ConsoleKey key; do {
key = Console.ReadKey(true).Key; } while (key != ConsoleKey.Q); } }
}123456789101112131415161718192021222324252627282930123456789101112131415161718192021222324252627282930运行后,通过cmd netstat –a 可以查看已经开启8500端口监听: 客户端与服务器连接服务端开启端口监听后,接下
来就是客户端来发起连接了。 创建一个新的控制台命令程序ClientConsole,代码如下:using System; using System.Collections.Generic; using System.Linq; using System.Text;
using System.Net; using System.Net.Sockets; namespace ClientConsole {
class Program {
static void Main(string[] args) {
Console.WriteLine(\ TcpClient client = new TcpClient(); try {
client.Connect(\与服务器连接 }
catch (Exception ex){