Java單線程程序?qū)崿F(xiàn)實(shí)現(xiàn)簡(jiǎn)單聊天功能
信息發(fā)送
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);//端口號(hào) Socket soc = socket.accept();// 讀取信息 BufferedReader br = new BufferedReader(new InputStreamReader(soc.getInputStream())); PrintWriter out = new PrintWriter(soc.getOutputStream()); while (true) {// 發(fā)送System.out.println('發(fā)送:');String msg = new Scanner(System.in).nextLine();//SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss');out.println(String.format('[%s]:%srn', '服務(wù)器', msg));out.flush();// 接收System.out.println(br.readLine()); } } catch (IOException e) { e.printStackTrace(); } }}
接收信息并回復(fù)
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);//鏈接端口號(hào) 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());// 發(fā)送System.out.println('發(fā)送:');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(); } }}
發(fā)送你好

接收你好并回復(fù)
[/code]
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Python 如何調(diào)試程序崩潰錯(cuò)誤2. Python sublime安裝及配置過(guò)程詳解3. Python 利用Entrez庫(kù)篩選下載PubMed文獻(xiàn)摘要的示例4. Python 制作查詢商品歷史價(jià)格的小工具5. Python 合并拼接字符串的方法6. ASP.NET MVC使用jQuery ui的progressbar實(shí)現(xiàn)進(jìn)度條7. ASP基礎(chǔ)知識(shí)VBScript基本元素講解8. Python3 json模塊之編碼解碼方法講解9. Linux刪除系統(tǒng)自帶版本Python過(guò)程詳解10. python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)

網(wǎng)公網(wǎng)安備