Python 使用BytesIO发送空白文本文件时出现不一致
我正试图用discord.py发送一个文本文件,但当我发送该文件时,它似乎是空的 示例代码段:Python 使用BytesIO发送空白文本文件时出现不一致,python,discord.py,bytesio,Python,Discord.py,Bytesio,我正试图用discord.py发送一个文本文件,但当我发送该文件时,它似乎是空的 示例代码段: bytes = BytesIO() test = b'sadfasdfsa' bytes.write(test) print(bytes) await ctx.send(file=File(bytes, 'test.txt')) 这将导致发送一个空的test.txt文件。为什么不发送内容?调用BytesIO.write()后,BytesIO指针将设置到文件的末尾。要从内存中读取完整文件,您需要首先使
bytes = BytesIO()
test = b'sadfasdfsa'
bytes.write(test)
print(bytes)
await ctx.send(file=File(bytes, 'test.txt'))
这将导致发送一个空的test.txt文件。为什么不发送内容?调用
BytesIO.write()
后,BytesIO
指针将设置到文件的末尾。要从内存中读取完整文件,您需要首先使用seek()
设置指向文件开头的指针。因此,在发送文件之前,请调用:
bytes_.seek(0)
另一方面,如果您将变量命名为bytes
,您将覆盖,这就是我在上面的示例中重命名它的原因