"""TCP 文本写入服务端(实验大纲示例应用)""" import os import socket HOST = "0.0.0.0" PORT = 8888 SAVE_PATH = "./data.txt" if not os.path.exists(os.path.dirname(SAVE_PATH)) and os.path.dirname(SAVE_PATH): os.makedirs(os.path.dirname(SAVE_PATH)) def save_to_file(content): """文本追加写入本地磁盘""" with open(SAVE_PATH, "a", encoding="utf-8") as f: f.write(content + "\n") def main(): server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) server_socket.bind((HOST, PORT)) server_socket.listen(5) print(f"TCP 写入服务已启动,监听端口:{PORT}") print(f"数据保存路径:{os.path.abspath(SAVE_PATH)}") while True: conn, addr = server_socket.accept() print(f"\n客户端已连接:{addr}") try: while True: data = conn.recv(1024) if not data: break text = data.decode("utf-8").strip() print(f"收到数据:{text}") save_to_file(text) conn.send("写入成功,数据已保存到磁盘".encode("utf-8")) except Exception as e: print(f"连接异常:{e}") finally: conn.close() print("客户端连接断开") if __name__ == "__main__": main()