如何使用Java实现基于Tcp的基础聊天功能
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,这篇文章给大家分享的是有关如何使用Java实现基于Tcp的基础聊天功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体如下:最基础的聊天,用户端和服务器端每次说一句,而且
千家信息网最后更新 2025年11月11日如何使用Java实现基于Tcp的基础聊天功能
这篇文章给大家分享的是有关如何使用Java实现基于Tcp的基础聊天功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
具体如下:
最基础的聊天,用户端和服务器端每次说一句,而且严格规定了先后到顺序。
服务器端:
import java.io.*;import java.net.*;public class ChatServer { public static void main(String[] args) { ServerSocket server = null; try { server = new ServerSocket(12138); } catch (IOException e) { System.out.println("error" + e); }// server = null; try { Socket ac = null;// ac = new Socket();// ac = null; ac = server.accept(); BufferedReader is = null; is = new BufferedReader(new InputStreamReader(ac.getInputStream())); BufferedReader dis = new BufferedReader(new InputStreamReader(System.in)); PrintWriter os = new PrintWriter(ac.getOutputStream()); String line = null; System.out.println("clinent " + is.readLine()); line = dis.readLine(); while(!line.equals("bey")) { os.println(line); os.flush(); System.out.println("server " + line); System.out.println("client " + is.readLine()); line = dis.readLine(); } os.close(); dis.close(); is.close(); ac.close(); } catch (Exception e) { System.out.println("error" + e); } }}用户端:
public class ChatClient { public static void main(String[] args) { Socket client = null; try { client = new Socket("127.0.0.1",12138); BufferedReader dis = new BufferedReader(new InputStreamReader(System.in)); BufferedReader is = new BufferedReader(new InputStreamReader(client.getInputStream())); PrintWriter os = new PrintWriter(client.getOutputStream()); String line = dis.readLine(); while(!line.equals("bey")) { os.println(line); os.flush(); System.out.println("client " + line); System.out.println("server " + is.readLine()); line = is.readLine(); } os.close(); dis.close(); is.close(); client.close(); } catch (Exception e) { System.out.println("error" + e); } }}无论是用户端还是服务器端都用了BufferedReader用来写入一些了连续的字符串,用PrintWriter进行输出。
注:BufferedWriter接收到的参数需要是字符类的数据流,所以要建一个inputStreamReader,而InputStreamReader的参数是数据流即可。
上面规定了写入的顺序是客户端先写,然后是服务器端;
注意要在循环结束的时候close个个数据流和端口。
感谢各位的阅读!关于"如何使用Java实现基于Tcp的基础聊天功能"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
服务器
服务
基础
数据
数据流
用户
用户端
功能
内容
参数
字符
更多
篇文章
顺序
不错
实用
先后
字符串
客户
客户端
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云南网络安全专业研究生招收分数
华古网络技术
服务器cpu 堵塞
富民第三方软件开发市场价
我的世界手机版空岛服务器
森鹏互联网科技有限公司
js能直接操作数据库吗
软件开发TPMS
计算机网络技术老师岗位介绍
软件开发 付尾款交源码
解释数据库冷备份和热备份
软件开发前后端分离
数据库主变量的作用是什么
仪陇人民医院网络安全
数据库表修改字段名
莆田市网络安全教育平台登录
软件开发 共通设计
服务器内部图
数据库的子查询可以返回多少行
数据库2008分离还原步骤
网络安全宪法实行时间
迪肯大学网络安全硕士专业
软件开发计价 规定
人民日报数据库会查重吗
鹰潭正规服务器价格
信息安全同等于网络安全
泰州学院计算机网络技术
轩辕传奇不同服务器
软件开发框架名称
数据库表修改字段名