java简单聊天代码
来源:互联网 发布:斧子演示 mac 编辑:程序博客网 时间:2024/06/07 12:59
客户端:package com.dada.handlefile;import java.io.BufferedReader;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.Socket;/** * @author dada * 客户端 */public class Client {public static void main(String[] args) throws Exception, IOException {Socket sClient = new Socket("localhost", 9999);InputStream is = sClient.getInputStream();DataInputStream dis = new DataInputStream(is);OutputStream os = sClient.getOutputStream();DataOutputStream dos = new DataOutputStream(os);new ClientReader(dis).start();new ClientWriter(dos).start();}}/** * @author dada * 客户端读取类 */class ClientReader extends Thread {DataInputStream dis;public ClientReader(DataInputStream dis) {super();this.dis = dis;}@Overridepublic void run() {String info;while (true) {try {info = dis.readUTF();System.out.println("对方说: " + info);if (info.equals("bye")) {System.out.println("对方下线");System.exit(0);}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}/** * @author dada * 客户端写出类 */class ClientWriter extends Thread {DataOutputStream dos;public ClientWriter(DataOutputStream dos) {this.dos = dos;}@Overridepublic void run() {String info;InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);while (true) {try {info = br.readLine();dos.writeUTF(info);if (info.equals("bye")) {System.out.println("自己下线");System.exit(0);}} catch (IOException e) {e.printStackTrace();}}}}服务器端:package com.dada.handlefile;import java.io.BufferedReader;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.ServerSocket;import java.net.Socket;/** * @author dada *服务器端 */public class Server {public static void main(String[] args) throws Exception {//实例化一个服务器端的socket实例ServerSocket ss = new ServerSocket(9999);Socket sServer = ss.accept();//获取输入流InputStream is = sServer.getInputStream();//封装DataInputStream是因为它可以以UTF的格式读取数据DataInputStream dis = new DataInputStream(is);//获取输出流OutputStream os = sServer.getOutputStream();//封装DataInputStream是因为它可以以UTF的格式读取数据DataOutputStream dos = new DataOutputStream(os);new ServerReader(dis).start();new ServerWriter(dos).start();}}/** * @author Administrator *这个类主要是用来提供从服务器端的流读取数据的 */class ServerReader extends Thread {DataInputStream dis;public ServerReader(DataInputStream dis) {this.dis = dis;}@Overridepublic void run() {String info;while (true) {try {info = dis.readUTF();System.out.println("对方说: " + info);if (info.equals("bye")) {System.out.println("对方下线: ");System.exit(0);}} catch (IOException e) {e.printStackTrace();}}}}/** * @author Administrator *这个方法主要是提供从服务器端向外写数据服务的 */class ServerWriter extends Thread {DataOutputStream dos;public ServerWriter(DataOutputStream dos) {super();this.dos = dos;}@Overridepublic void run() {String info;InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);while (true) {try {info = br.readLine();dos.writeUTF(info);if (info.equals("bye")) {System.out.println("自动退出!");System.exit(0);}} catch (IOException e) {e.printStackTrace();}}}}
- java简单聊天代码
- Java简单聊天程序
- JAVA简单聊天程序
- Java TCP 简单聊天
- 一个简单的聊天代码
- JAVA简单多线程一对一聊天
- java简单多人聊天
- 简单的java聊天程序
- java Socket简单聊天实现
- Java实现 简单聊天软件
- java 仿QQ聊天代码
- 一个简单的QQ聊天代码
- [Java] Socket/ServerSocket 控制台简单聊天程序
- java中UDP简单聊天程序
- java----------C/S编程-----简单聊天程序
- Java 基于socket thread 简单聊天程序
- Java实现的一个简单聊天软件
- 用Java语言编写简单聊天程序
- C 消息列队
- Fedora15 默认OpenJDK与SunJDK互相切换(转)
- MYECLISE6.5下CDT安装
- cdma pdu解析终极文档
- linux驱动头文件说明
- java简单聊天代码
- 错误:Element type "select" must be declared.
- 最近google.com打不开了
- C 标准管道send
- c/c++各种字符、字符串类型转换
- C 标准管道 revc
- c/c++ 中文件路径的表示
- 为何加入:private static final long serialVersionUID
- POJ 1696 Space Ant (叉积,三点共线)