短連線:只進行一次收發就是短連線
長連線:傳送訊息後不關閉就是長連線,但會存在粘包等問題。
接收:可以寫入乙個迴圈一直接收
trycatch (exception e)finally
if (outputstream!=null)
} catch (ioexception e) }}
}catch(exception e)
// 沒有關閉accept,就會一直迴圈接收訊息。
傳送端:
//傳送訊息
socket socket = new socket("127.0.0.1",8080);
outputstream outputstream = socket.getoutputstream();
string s = "你好,世界";
byte bytes = s.getbytes("utf-8");
//先傳送乙個八位的,表示此次訊息的長度。該方法貼在後邊
outputstream.write(int2bytes8(bytes.length));
outputstream.write(bytes);
//接收反饋
inputstream inputstream = socket.getinputstream();
byte bytes1 =new byte[1024];
inputstream.read(bytes1);
system.out.println("伺服器反饋:"+new string(bytes1));
inputstream.close();
outputstream.close();
將訊息長度自動補至八位:
public static byte int2bytes8(int num)
return sb.tostring().getbytes();
}
歡迎各位大佬指點。 1 Socket網路程式設計
1.借助伺服器實現小寫轉大寫的程式 客戶端 傳送任意小寫字母到伺服器端。伺服器端 接收小寫字母,轉為大寫,回傳給客戶端,然後客戶端顯示到螢幕。結構體struct sockaddr in的標頭檔案 include toupper 函式標頭檔案 define serv ip 127.0.0.1 ip位址...
1 Socket程式設計 網路協議一
我們在傳輸資料時,可以只使用 傳輸層 tcp ip協議,但是那樣的話,如果沒有應用層,便無法識別資料內容 tcp ip只是乙個協議棧,就像程式執行一樣,必須要實現執行,同時還要提供對外的操作介面 網路從下往上分為物理層 資料鏈路層 網路層 傳輸層 會話層 表示層和應用層。ip協議對應於網路層,tcp...
Socket網路程式設計(1)
傳輸層 transport 傳輸層包括 udp 和 tcp,udp 幾乎不對報文進行檢查,而 tcp 提供傳輸保證。網路層 network 網路層協議由一系列協議組成,包括 icmp igmp rip ospf ip v4,v6 等。鏈路層 link 又稱為物理資料網路介面層,負責報文傳輸。按埠號可...