Java單線程程序實現實現簡單聊天功能
信息發送
import java.io.*;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner; public class May { public static void main(String[] args) {// 單線程程序 try { ServerSocket socket = new ServerSocket(2233);//端口號 Socket soc = socket.accept();// 讀取信息 BufferedReader br = new BufferedReader(new InputStreamReader(soc.getInputStream())); PrintWriter out = new PrintWriter(soc.getOutputStream()); while (true) {// 發送System.out.println('發送:');String msg = new Scanner(System.in).nextLine();//SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss');out.println(String.format('[%s]:%srn', '服務器', msg));out.flush();// 接收System.out.println(br.readLine()); } } catch (IOException e) { e.printStackTrace(); } }}
接收信息并回復
import java.io.*;import java.net.Socket;import java.util.Scanner;public class Max { public static void main(String[] args) { try { Socket s = new Socket('localhost',2233);//鏈接端口號 String sc = s.getInetAddress().getHostAddress();//獲取IP// 讀取信息 BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream())); PrintWriter out = new PrintWriter(s.getOutputStream()); while (true) {// 接收System.out.println(br.readLine());// 發送System.out.println('發送:');String msg = new Scanner(System.in).nextLine();//SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss');out.println(String.format('[%s]:%srn', sc, msg));out.flush(); } } catch (IOException e) { e.printStackTrace(); } }}
發送你好
接收你好并回復
[/code]
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. python如何換行輸出2. Python使用urlretrieve實現直接遠程下載圖片的示例代碼3. Python:UserWarning:此模式具有匹配組。要實際獲得組,請使用str.extract4. Android Studio中一套代碼多渠道打包的實現方法5. Java 接口和抽象類的區別詳解6. python如何計算圓的面積7. Java使用Tesseract-Ocr識別數字8. Android打包篇:Android Studio將代碼打包成jar包教程9. 詳解java google Thumbnails 圖片處理10. 解決Android Studio 格式化 Format代碼快捷鍵問題
