PrintWriter o = new PrintWriter(socket.getOutputStream()); //输出流
o.println(str); //输出
o.flush(); //清空
}
} catch (IOException e) {
// TODO Auto-generated catch block
// e.printStackTrace();
return;
}
}
}
}
用java编写多人聊天室程序 , 不需要太复杂求大神发给我,最好能运行,有源代码 。谢谢了文件1:
package com.qq;
import java.io.InputStream;
import java.io.DataInputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.DataOutputStream;
import java.io.BufferedReader;
import java.net.ServerSocket;
import java.net.Socket;
import java.io.IOException;
import java.util.Date;
public class Server {
public Server() {
try {
ServerSocket s = new ServerSocket(8888);
Socket ss = s.accept();
OutputStream out = ss.getOutputStream();
DataOutputStream dout = new DataOutputStream(out);
InputStream in = ss.getInputStream();
DataInputStream din = new DataInputStream(in);
System.out.print(din.readUTF() + "!");
dout.writeUTF("你已经连接到服务器" + "\t" + "你的地址:" + ss.getInetAddress()
+ "\t" + "你的链接端口:" + ss.getLocalPort() + "\n");
new ReadMessage(din).start();
new SendMessage(dout).start();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new Server();
}
}
// 接受客户端信息
class ReadMessage extends Thread {
private DataInputStream din;
public ReadMessage(DataInputStream din) {
this.din = din;
}
public void run() {
String str;
try {
while (true) {
str = din.readUTF();
System.out.println(new Date().toLocaleString() + "客户端说:" + str);
if (str.equals("bye")) {
System.out.println("客户端下线!");
break;
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
// 发出服务器信息
class SendMessage extends Thread {
private DataOutputStream dout;
public SendMessage(DataOutputStream dout) {
this.dout = dout;
}
public void run() {
InputStreamReader inr = new InputStreamReader(System.in);
BufferedReader buf = new BufferedReader(inr);
String str;
try {
while (true) {
str = buf.readLine();
dout.writeUTF(str);
if (str.equals("bye")) {
System.out.println("服务器退出!");
System.exit(1);
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
----------------------------------------
文件2:
package com.qq;
import java.io.InputStream;
import java.io.DataInputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.DataOutputStream;
import java.io.BufferedReader;
import java.net.Socket;
import java.io.IOException;
import java.util.Date;
public class Client {
public Client() {
try {
Socket s = new Socket("192.168.1.2", 8888);
InputStream in = s.getInputStream();
DataInputStream din = new DataInputStream(in);
OutputStream out = s.getOutputStream();
DataOutputStream dout = new DataOutputStream(out);
dout.writeUTF("服务器你好!我是客户端");
System.out.println(din.readUTF());
new Thread(new SenderMessage(dout)).start();
new Thread(new ReaderMessage(din)).start();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new Client();
}
}
class ReaderMessage implements Runnable {
private DataInputStream din;
推荐阅读
- 天骄直播运营,元气骑士雇佣新随从扣血
- 微信视频号变了,微信视频号变形
- 任天堂游戏机射击游戏下载,任天堂好玩的射击游戏
- gis数据库约束条件moc,数据库约束条件m,o,c
- c语言时间函数用法 c中时间函数怎么用
- js的&标签,js设置标签属性值
- 陈瑶唱歌视频软件免费安卓,陈瑶唱歌好听
- tiktok无人直播工具知乎,tiktok怎么无人直播
- vb.netddc属性 vbnet ado