服务端:
from socket import *
HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST, PORT)
server = socket(AF_INET, SOCK_STREAM)
server.bind(ADDR)
server.listen(5)
#下面是选择文件路径和文件从Windows中复制来的路径中将反斜杠‘\’换成斜杠‘/’或者在双引号前加 r
#这里是用的是斜杠,在客户端我使用的是加 r
filename = "C:/Users/Administrator/OneDrive/桌面/将要接收的文件.txt"
while True:
print("等待连接...")
skt, addr = server.accept()
d = skt.recv(1024)
with open(filename, mode='ab') as f:
f.write(d)
f.close()
print('接收完毕')
skt.close()
break
server.close()
客户端:
from socket import *
HOST = "127.0.0.1"
PORT = 23333
ADDR = (HOST, PORT)
client = socket(AF_INET, SOCK_STREAM)
client.connect(ADDR)
filename = r"C:\Users\Administrator\OneDrive\桌面\text.txt"
with open(filename, mode='rb') as f:
while True:
data = f.read(1024)
if not data:
break
client.sendall(data)
f.close()
print("发送完毕")
client.close()