當前位置:編程學習大全網 - 編程語言 - 套接字編程

套接字編程

使用System.Net;

使用系統。Net . Sockets

靜態void Main(string[] args)//服務器段

{

int port = 2000

string host = " 127 . 0 . 0 . 1 ";

/**/

///創建端點

ip地址ip =地址。解析(主機);//將ip地址字符串轉換為ip address類型的實例。

IPEndPoint ipe = new IPEndPoint(ip,port);//用指定的端口和ip初始化IP終結點類的新實例。

/**/

///創建壹個套接字並開始偵聽。

Socket s =新套接字(AddressFamily。互聯網,SocketType。流,協議類型。TCP);//創建壹個套接字對象。如果使用udp協議,請使用SocketType.Dgram類型的套接字。

南bind(ipe);//綁定端點對象(2000端口和ip地址)

南聽(0);//開始監聽

控制臺。WriteLine("等待客戶端連接");

/**/

///接受客戶端連接,為此連接建立新的套接字,並接受信息。

套接字溫度= s . Accept();//為新連接創建新套接字。

控制臺。WriteLine("建立連接");

string recvStr =

byte[] recvBytes =新字節[1024];

int字節;

字節=溫度。接收(接收字節,接收字節。長度,0);//從客戶端接收信息

recvStr +=編碼。ASCII.GetString(recvBytes,0,bytes);

/**/

///向客戶端返回信息。

控制臺。WriteLine("服務器獲取消息:{0} ",recvStr);//顯示來自客戶端的信息。

string sendStr = "ok!客戶端發送消息成功!”;

byte[] bs =編碼。ASCII . GetBytes(sendStr);

在…之時發(bs,bs。長度,0);//向客戶端返回信息。

在…之時close();

南close();

控制臺。ReadLine();

}

靜態void Main(string[] args)//客戶端

{

嘗試

{

int port = 2000

string host = " 127 . 0 . 0 . 1 ";

/**/

///創建端點

ip地址ip =地址。解析(主機);

//IP address IPP = new IP address(" 127 . 0 . 0 . 1 ");

IPEndPoint ipe = new IPEndPoint(ip,port);//將ip和端口轉換為IPEndpoint實例。

/**/

///創建壹個套接字並連接到服務器。

Socket c =新套接字(AddressFamily。互聯網,SocketType。流,協議類型。TCP);//創建套接字

控制臺。WriteLine("連接…");

c.連接(ipe);//連接到服務器

/**/

///向服務器發送信息

string sendStr = "hello!這是壹個套接字測試”;

byte[] bs =編碼。ASCII . GetBytes(sendStr);//將字符串編碼成字節

控制臺。WriteLine("發送消息");

c.發(bs,bs。長度,0);//發送信息

/**/

///接受服務器返回的信息

string recvStr =

byte[] recvBytes =新字節[1024];

int字節;

bytes = c.Receive(recvBytes,recvBytes。長度,0);//接收服務器返回的信息。

recvStr +=編碼。ASCII.GetString(recvBytes,0,bytes);

控制臺。WriteLine("客戶端獲取消息:{0} ",recvStr);//顯示服務器返回的信息

/**/

///使用後壹定要關閉套接字。

c.close();

}

catch (ArgumentNullException e)

{

控制臺。WriteLine(" argumentNullException:{ 0 } ",e);

}

catch (SocketException e)

{

控制臺。WriteLine("SocketException:{0} ",e);

}

控制臺。WriteLine("按回車鍵退出");

}

  • 上一篇:linux安裝mac軟件linux安裝mac
  • 下一篇:水晶塔防的遊戲攻略
  • copyright 2024編程學習大全網