為什么tcp比udp麻煩?多搞了兩個流
首先是TCP的客戶端
?? ??? ??? ?//1.創(chuàng)建客戶端Socket,指定服務器端地址和端口
?? ??? ??? ?Socket socket = new Socket("localhost",8888);
?? ??? ??? ?//2.獲取輸出流,向服務器端發(fā)送信息
?? ??? ??? ? OutputStream os = socket.getOutputStream();//字節(jié)輸出流
?? ??? ??? ? PrintWriter pw = new PrintWriter(os);//將輸出流包裝為打印流
?? ??? ??? ? pw.write("用戶名:admin;密碼:453");
?? ??? ??? ? pw.flush();//刷新緩存,向服務器端輸出
?? ??? ??? ? socket.shutdownOutput();
然后是UDP的客戶端
?? ??? ?//1.定義服務器的地址、端口號、數(shù)據(jù)
?? ??? ?InetAddress address = InetAddress.getByName("localhost");
?? ??? ?int port=8000;
?? ??? ?byte[] data = "用戶名:admin;密碼:123".getBytes();
?? ??? ?//2.創(chuàng)建數(shù)據(jù)報,包含發(fā)送的數(shù)據(jù)信息
?? ??? ?DatagramPacket packet=new DatagramPacket(data,data.length,address,port);
?? ??? ?//3.創(chuàng)建DatagramSocket對象
?? ??? ?DatagramSocket socket =new DatagramSocket();
?? ??? ?//4.向服務器端發(fā)送數(shù)據(jù)報
?? ??? ?socket.send(packet);
為什么TCP發(fā)送數(shù)據(jù)要經過字節(jié)流、打印流?而UDP發(fā)送竟然如此的簡單?