|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 xdyewu 于 2020-4-6 16:24 编辑
第一种:
- def send_file(serve_addr,tcp_socket):
- send_file_name = input("请输入要上传的文件文件名:")
- file_content = None
- file = open(send_file_name,"rb")
- file_content = file.read
- file.close()
- if file_content:
- tcp_socket.send(send_file_name.encode("utf-8"))
- tcp_socket.send(file_content)
复制代码
第二种:
- def send_file(serve_addr,tcp_socket):
- send_file_name = input("请输入要上传的文件文件名:")
- file_content = None
- file_content = file_del(send_file_name)
- if file_content:
- tcp_socket.send(send_file_name.encode("utf-8"))
- tcp_socket.send(file_content)
- print("文件上传成功")
- else :
- print("文件上传失败")
- def file_del(send_file_name):
- try:
- date = open(send_file_name,"rb")
- file_date = date.read()
- date.close()
- return file_date
- except Exception:
- print("文件异常")
复制代码
采用第二种方式出来的代码可以正常使用,而我用第一种方法出来的代码出现了这种错误提示。
“tcp_socket.send(file_content)”
”TypeError: a bytes-like object is required, not 'builtin_function_or_method'“
希望各位大佬可以跟我解释一下这种情况,我后面加.encode()也没有办法运行。
xdyewu 发表于 2020-4-6 16:28
不好意思,原来传的代码有点问题,第一种方法原来没有 file_deal方法。重新修改了。
file_count打印后是 ...
一楼第一种第⑤行read后面是否有()
|
|