Socket客戶端常用方法,不積矽步無以至千里

2021-10-10 17:36:15 字數 1006 閱讀 6820

1. 建立客戶端socket物件:socket clientsocket=new socket(addressfamily.internetwork,sockettype.stream,protocoltype.tcp);

2. 建立表示ip的位元組陣列:byte ip=new byte

3. 建立ipaddress物件:ipaddress ipaddress=new ipaddress(ip);

4. 建立ipendpoint物件:ipendpoint ipendpoint=new ipendpoint(ipaddress,服務端埠號);

5. 連線服務端: clientsocket.connect(ipendpoint);

6. 建立單獨的執行緒,執行資料互動的方法:thread thread=new thread(資料互動的方法);

7. 執行執行緒:thread.start();

8. 建立資料互動的方法:

建立連線狀態標誌:bool connectflag=true;

開始資料收發迴圈:

建立用來儲存實際傳送位元組數的變數:int sendnum=-1;

建立傳送位元組陣列資料塊:byte sendbuffer=new byte;

傳送資料:sendnum=this.clientsocket.send(sendbuffer);

建立用來儲存實際接收位元組數的變數:int receivenum=-1;

建立接收位元組陣列資料塊:byte receivebuffer=new byte[最多一次接收的位元組數]

接收資料:receivenum=this.clientsocket.receive(receivebuffer)                

判斷讀取到的位元組數是否為0,如果為0,則對等連線已斷開

銷毀引用:clientsocket.dispose();

連線標誌置位false:connectflag=false;

退出迴圈:break;

9. *可以通過異常捕獲,得到客戶端的斷線狀態*

SOCKET客戶端程式設計

1.建立socket物件 socket建構函式有4個引數,第乙個是family,代表位址家族af net,af net6等,第二個是type,套接字型別sock stream 流套接字 和sock dgram 資料報套接字 import socket s socket.socket socket.a...

Socket服務端常用方法,不積矽步無以至千里

1.建立服務端socket物件 socket serversocket new socket addressfamily.internetwork,sockettype.stream,protocoltype.tcp 2.建立客戶端socket物件socket clientsocket null 3...

Socket實現HTTP客戶端

前些日子用 wininet做專案。功能忒強大了。但總覺得管理cookie有點不方便。即使設定了自己手動管理cookies。這天上掉餡餅的事還真的常常發生。比如你之前用瀏覽器訪問了這個站,留下了cookie 你再用wininet訪問的時候,這個餡餅就出現了。封包不難 連線後。將 headers一股腦堆...