在mac系统中 用vs code 编写了 tpc客户端下载文件,但是在vs code直接运行
程序能够正常运行但没有能下载到文件,而在系统终端内运行程序,则可以正常
下载文件。为什么会这样,代码如下:
import socket
def main():
# 1. 创建套接字
tcp_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 2. 获取服务器的ip port
dest_ip = input("请输入下载服务器的ip:")
dest_port = int(input("请输入下载服务器的port:"))
# 3. 链接服务器
tcp_socket.connect((dest_ip,dest_port))
# 4. 获取下载的文件名字
download_file_name = input("请输入要下载的文件名:")
# 5. 将文件名字发送到服务器
tcp_socket.send(download_file_name.encode("utf-8"))
# 6. 接收文件中的数据
recv_data = tcp_socket.recv(1024)
print(recv_data.decode("gbk"))
# 7. 保存接收的数据到一个文件中
with open("附件" + download_file_name,"wb") as f:
f.write(recv_data)
print("download succussful!")
# 8. 关闭套接字
tcp_socket.close()
if __name__ == "__main__":
main()