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]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。
相关文章: