久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

用java編寫qq聊天程序

126次閱讀
沒有評論

共計 1263 個字符,預計需要花費 4 分鐘才能閱讀完成。

下面是一個簡單的使用 Java 編寫的 QQ 聊天程序的代碼示例:

import java.io.*;
import java.net.*;
public class QQChatClient {
private Socket socket;
private BufferedReader reader;
private PrintWriter writer;
public QQChatClient(String host, int port) {
try {// 連接  服務器
socket = new Socket(host, port);
System.out.println("成功連接到服務器");
// 創建輸入輸出流
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
writer = new PrintWriter(socket.getOutputStream(), true);
// 啟動接收消息線程
new Thread(new MessageReceiver()).start();
// 讀取用戶輸入并發送消息
BufferedReader userInputReader = new BufferedReader(new InputStreamReader(System.in));
String userInput;
while ((userInput = userInputReader.readLine()) != null) {writer.println(userInput);
}
} catch (IOException e) {e.printStackTrace();
} finally {
try {if (socket != null) {socket.close();
}
if (reader != null) {reader.close();
}
if (writer != null) {writer.close();
}
} catch (IOException e) {e.printStackTrace();
}
}
}
public static void main(String[] args) {QQChatClient chatClient = new QQChatClient("localhost", 8888);
}
class MessageReceiver implements Runnable {
@Override
public void run() {
try {
String message;
while ((message = reader.readLine()) != null) {System.out.println("收到消息:" + message);
}
} catch (IOException e) {e.printStackTrace();
}
}
}
}

該程序使用 Socket 連接到指定的服務器和端口,然后創建輸入輸出流進行消息的發送和接收。在主線程中,通過讀取用戶的輸入并發送到服務器。另外,在單獨的線程中,通過不斷地讀取輸入流來接收服務器發送的消息,并在控制臺進行輸出。

丸趣 TV 網 – 提供最優質的資源集合!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-21發表,共計1263字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 自贡市| 双辽市| 梁平县| 南安市| 四子王旗| 蒙城县| 万安县| 鄂伦春自治旗| 陈巴尔虎旗| 福清市| 扎囊县| 庆阳市| 合川市| 舒城县| 龙山县| 广宗县| 永丰县| 灵武市| 连南| 桐城市| 稻城县| 丁青县| 鄂托克前旗| 蒙阴县| 兴仁县| 阿合奇县| 黔东| 固阳县| 岳普湖县| 山西省| 曲周县| 汉中市| 临桂县| 新干县| 任丘市| 灵山县| 寿光市| 宜兰县| 开封县| 武邑县| 宁明县|