写一个Java的聊天程序,要代码
时间: 2023-08-31 09:23:41 浏览: 110
一个java编写的聊天程序
### 回答1:
我很高兴能够帮助你写一个Java聊天程序。以下是用Java编写的一个基本的聊天程序的示例代码:import java.io.*;
import java.net.*;public class ChatServer {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(6666);
Socket socket = serverSocket.accept();
DataInputStream dataInputStream = new DataInputStream(socket.getInputStream());
DataOutputStream dataOutputStream = new DataOutputStream(socket.getOutputStream());
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
String messageString = "";
while (!messageString.equals("bye")) {
messageString = dataInputStream.readUTF();
System.out.println("Client Says: " + messageString);
messageString = bufferedReader.readLine();
dataOutputStream.writeUTF(messageString);
dataOutputStream.flush();
}
socket.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
### 回答2:
下面是一个简单的Java聊天程序的代码:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class ChatServer {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(8080);
System.out.println("服务器启动,等待客户端连接...");
Socket clientSocket = serverSocket.accept();
System.out.println("客户端连接成功!");
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println("客户端消息:" + inputLine);
out.println("服务器收到消息:" + inputLine);
}
in.close();
out.close();
clientSocket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
上面的代码是一个简单的聊天服务器程序。它创建一个服务器套接字,等待客户端连接。当客户端连接成功后,它会创建一个输入流和输出流,用于接收和发送消息。循环读取客户端发送的消息,并将其打印在控制台上,然后将消息发送回客户端。当客户端关闭连接后,程序结束。
要运行这个程序,你需要将代码保存为一个名为"ChatServer.java"的文件,然后使用Java编译器编译它。在命令行中输入"javac ChatServer.java",然后运行生成的类文件,使用"java ChatServer"命令。
### 回答3:
以下是一个简单的Java聊天程序的示例代码:
```java
import java.io.*;
import java.net.*;
public class ChatProgram {
public static void main(String[] args) {
try {
// 创建ServerSocket并指定端口号
ServerSocket serverSocket = new ServerSocket(8080);
// 接受客户端连接
Socket clientSocket = serverSocket.accept();
// 创建输入流和输出流
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
// 不断读取客户端的消息
String message;
while ((message = in.readLine()) != null) {
System.out.println("收到客户端消息:" + message);
// 回复客户端消息
out.println("你好,收到了你的消息:" + message);
// 输入特定字符,结束聊天
if (message.equalsIgnoreCase("bye")) {
break;
}
}
// 关闭连接
clientSocket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
该程序是一个简单的单向聊天程序,客户端发送消息到服务器,服务器接收并回复消息。可以通过创建一个新的Java类,将以上代码粘贴进去并运行。然后在命令行或终端中运行`telnet localhost 8080`连接到服务器,即可与服务器进行聊天。
阅读全文