zoukankan      html  css  js  c++  java
  • 网络编程tcp

    tcp客户端创建流程

    import socket
    # 创建套接字
    tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 建立和服务器的链接
    tcp_socket.connect(("服务器IP", 8888))
    # 发送数据
    send_content = "发送内容"
    send_data = send_content.encode("gbk")
    tcp_socket.send(send_data)
    # 接收数据
    recv_data = tcp_socket.recv(1024)
    recv_content = recv_data.decode("gbk")
    print(recv_content)
    # 关闭套接字
    tcp_socket.close()

    tcp服务端创建流程

    import socket
    # 创建套接字
    tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 立即释放端口
    tcp_socket,setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
    # 绑定端口
    tcp_socket.bind(("",8888))
    # 设置客户端最大连接数
    tcp_socket.listen(5)
    # 等待客户端建立连接
    client_socket, ip_part = tcp_socket.accept()
    # 发送数据
    send_content = "发送内容"
    send_data = send_content.encode("gbk")
    client_socket.send(send_data)
    # 接收数据
    recv_data = client_socket.recv(1024)
    recv_content = recv_data.decode("gbk")
    print(recv_content)
    # 关闭套接字(不和客户端进行收发数据)
    client_socket.close()
    # 关闭套接字(不再接受新的客户端与服务器建立连接)
    tcp_socket.close()

    tcp文件下载,本质就是客户端向服务端发送要下载的文件名,服务端收到数据后,读取对应文件
    并将读取内容发送给客户端,同时客户端建立对应名字的文件写入接受内容

    文件的另一种打开方式:

    with open(文件名, 打开方式) as f:
    用f操作文件
    语句块执行完自动关闭文件
  • 相关阅读:
    MFC 简介
    C++使用thread类多线程编程
    C++中stack
    C++中头文件简介(stdio.h & chrono)
    别人写的很好Arduino教材
    Communicating to 2 SPI Slaves with USART & SPI ports on Atmega16U2
    HDU 2089 不要62(挖个坑=-=)
    HDU 3555 Bomb(数位DP)
    HDU 3480 Division(斜率优化+二维DP)
    HDU 3045 Picnic Cows(斜率优化DP)
  • 原文地址:https://www.cnblogs.com/zc2018/p/8834966.html
Copyright © 2011-2022 走看看