21xrx.com
2024-11-09 00:58:16 Saturday
登录
文章检索 我的文章 写文章
用Java编写简单的QQ聊天工具
2023-06-15 14:06:45 深夜i     --     --

在今天的数字化时代,人们更加注重实时通讯。 QQ是一种广泛使用的聊天工具,可以让我们与世界各地的人进行沟通。但是,不是所有人都能访问QQ或在他们的电脑上运行它。因此,本文将介绍如何使用Java编写简单的QQ聊天工具。

代码案例:

首先,我们需要使用Java编写一个服务器程序。以下是服务器代码的基本结构:


import java.net.*;

import java.io.*;

public class Server {

  public static void main(String [] args) {

   int port = 8080;

   try {

     ServerSocket serverSocket = new ServerSocket(port);

     Socket clientSocket = serverSocket.accept();

     PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);

     BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));

     String inputLine;

     while ((inputLine = in.readLine()) != null) {

      out.println(inputLine);

     }

     in.close();

     out.close();

     clientSocket.close();

     serverSocket.close();

   } catch (IOException e) {

     System.out.println("Exception caught when trying to listen on port " + port + " or listening for a connection");

     System.out.println(e.getMessage());

   }

  }

}

接下来,我们需要编写一个客户端程序,用于连接到服务器并发送信息。以下是客户端代码的基本结构:


import java.net.*;

import java.io.*;

public class Client {

  public static void main(String [] args) {

   String serverHostname = "127.0.0.1";

   int port = 8080;

   try (

     Socket socket = new Socket(serverHostname, port);

     PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

     BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

   ) {

     BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));

     String userInput;

     while ((userInput = stdIn.readLine()) != null) {

      out.println(userInput);

      System.out.println("echo: " + in.readLine());

     }

     stdIn.close();

     socket.close();

   } catch (UnknownHostException e) {

     System.err.println("Don't know about host " + serverHostname);

     System.exit(1);

   } catch (IOException e) {

     System.err.println("Couldn't get I/O for the connection to " + serverHostname);

     System.exit(1);

   }

  }

}

在这里,客户端连接到服务器并发送消息,服务器将该消息发送回来作为响应。

keywords: Java,QQ聊天,简单实现

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复