это не моя домашняя работа (моя домашняя работа - это просто общение с клиентом и сервером, который он работает правильно, особенно с вашей помощью [:-)] , но я хочу, чтобы два клиента общались друг с другом, я не знайте, что когда я получаю текст от первого, как я могу отправить этот текст другому клиенту. Пожалуйста, помогите мне.как можно заставить двух клиентов общаться друг с другом?
public class MainServer {
static Socket client = null;
static ServerSocket server = null;
public static void main(String[] args) {
System.out.println("Server is starting...");
System.out.println("Server is listening...");
try {
server = new ServerSocket(5050);
} catch (IOException ex) {
System.out.println("Could not listen on port 5050");
System.exit(-1);
}
try {
boolean done = false;
while (!done) {
client = server.accept();
System.out.println("Client Connected...");
BufferedReader streamIn = new BufferedReader(new InputStreamReader(client.getInputStream()));
PrintWriter streamOut = new PrintWriter(client.getOutputStream(),true);
String line = streamIn.readLine();
if (line.equalsIgnoreCase("bye")) {
streamIn.close();
client.close();
server.close();
done = true;
} else {
System.out.println(line);
streamOut.println(line);
}
}
} catch (IOException e) {
System.out.println("IO Error in streams " + e);
}
}}
Я говорю о вашем предыдущем вопросе о том, как клиент разговаривает с сервером ... Кажется, у вас проблемы с домашней работой. Постарайтесь сделать это шаг за шагом. 1) клиентское сообщение для сервера (кнопка клиента нажата) 2) сервер отправляет сообщение клиенту (проверяйте его как эхо на клиент, который что-то посылает ... это в коде, обрабатывающем клиентский клиент-> сервер, сохранить строку и отправить ее клиенту). 3) Когда 1 и 2 работают, попробуйте отправить между двумя разными клиентами. – helios
Предположительно, каждый клиент подключается к серверу через сокет, чтобы вы могли иметь карту на своем сервере, которая сопоставляет имя или что-то в соответствующем сокете. Если вы отправляете сообщение от клиента на сервер, определите формат (например: target_client (\ n) сообщение (\ n), что-то простое начало) – helios
@Johanna: Пожалуйста, начните смотреть ** предварительный просмотр ** при записи/редактировании ваши сообщения. Одиночные разрывы не влияют. Вот почему ваше сообщение отображается без какого-либо формата ... –