Java用UDP實現簡單聊天
伺服器程式碼
import network.day1.Server;
import java.io.IOException;
import java.net.*;
import java.util.Scanner;
/**
* @ClassName UdpServer
* @Description TODO
* @Author 碼農天宇
* @Date 2020/12/6 16:28
* @Version 1.0
*/
public class UdpTalkServer {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
//建立伺服器物件 並指定埠
DatagramSocket server = new DatagramSocket(9876);
while (true){
//建立資料包,接受資料
byte[] recv = new byte[1024];
DatagramPacket packetRecv = new DatagramPacket(recv,0, recv.length);
//接收訊息
server.receive(packetRecv);
//讀取資料
String recvDate = new String(recv,0, packetRecv.getLength());
System.out.println("客戶端: " + recvDate);
//獲取客戶端ip
InetAddress address = packetRecv.getAddress();
//獲取客戶端埠
int port = packetRecv.getPort();
//建立資料包
System.out.print("伺服器: ");
byte[] send = sc.next().getBytes();
DatagramPacket sendDate = new DatagramPacket(send,send.length,address,port);
//傳送資料給客戶端
server.send(sendDate);
//關閉資源
//server.close();
}
}
}
客戶端程式碼
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.Socket;
import java.util.Scanner;
/**
* @ClassName UdpClient
* @Description TODO
* @Author 碼農天宇
* @Date 2020/12/6 16:28
* @Version 1.0
*/
public class UdpTalkClient {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
//建立客戶端
DatagramSocket client = new DatagramSocket();
//定義客戶端地址,埠號
InetAddress address = InetAddress.getByName("localhost");
int port = 9876;
while (true){
//建立資料
System.out.print("客戶端: ");
byte[] send = sc.next().getBytes();
DatagramPacket packet = new DatagramPacket(send, send.length,address,port);
//傳送資料
client.send(packet);
//建立資料包,用於接受資料
byte[] recv = new byte[1024];
DatagramPacket packetRecv = new DatagramPacket(recv,0,recv.length);
//接受資料
client.receive(packetRecv);
//讀取並列印資料
String recvDate = new String(recv,0,recv.length);
System.out.println("伺服器: " + recvDate);
//關閉
//client.close();
}
}
}
server
客戶端: 你好,伺服器
伺服器: 你好,客戶端
客戶端: 一個i澳網i李剛i熬過i奧
伺服器: 嗷嗷嗷
client
客戶端: 你好,伺服器
伺服器: 你好,客戶端
客戶端: 一個i澳網i李剛i熬過i奧
伺服器: 嗷嗷嗷
客戶端:
相關文章
- 用udp方式進行聊天的java實現. (轉)UDPJava
- 聊聊UDP、TCP和實現一個簡單的JAVA UDP小DemoUDPTCPJava
- 用UDP實現區域網內聊天程式UDP
- 用Java程式碼實現一個簡單的聊天室功能Java
- java Socket Udp聊天JavaUDP
- PHP實現最簡單的聊天室應用PHP
- 用node實現一個簡單的聊天室——websocket實踐Web
- java簡單聊天程式碼Java
- Laravel + Vue + Swoole 實現的簡單 Web 聊天LaravelVueWeb
- 重構 JAVA 聊天室 —— CS 模式的簡單架構實現Java模式架構
- Node TCP /UDP 簡易聊天室TCPUDP
- 花裡胡俏地用Dart+Flutter實現簡單聊天功能DartFlutter
- 用node實現一個簡單的聊天室—— 升級版
- 【專案原始碼】- 【區域網聊天】android實現區域網聊天 - UDP實現原始碼AndroidUDP
- java實現UDP通訊JavaUDP
- Python實現簡單的udp打洞(P2P)PythonUDP
- TCP和UDP實現簡單一對一通訊TCPUDP
- 用Java構建一個簡單的WebSocket聊天室JavaWeb
- 使用WebSocket實現一個簡單的頁面聊天Web
- WinForm的Socket實現簡單的聊天室 IMORM
- java實現簡單的JDBCJavaJDBC
- 用java實現一個簡單的區塊鏈Java區塊鏈
- 用java實現一個簡單的計算器Java
- UDP 協議簡單瞭解及應用UDP協議
- 如何用Python實現多工版的udp聊天器PythonUDP
- Lumen/Laravel 整合 GatewayWorker (Workerman),實現簡單的聊天系統.LaravelGateway
- webscoket+jsp實現簡單的多人聊天頁面WebJS
- java實現棧的簡單操作Java
- java實現簡單的單點登入Java
- 用java實現一個簡單的房屋管理程式。 (轉)Java
- 實現一個簡單的視訊聊天室(原始碼)原始碼
- 實現一個簡單的語音聊天室(原始碼)原始碼
- 使用Beetle.NetPackage簡單實現android和wp聊天PackageAndroid
- UNIX Domain Socket實現簡易聊天AI
- 用go 簡單實現的LRUGo
- UDP聊天程式補充UDP
- Java 新特性總結——簡單實用Java
- 簡單快遞系統 java實現Java