【问题标题】:Python3 convert byte object to file objectPython3将字节对象转换为文件对象
【发布时间】:2020-03-25 23:17:38
【问题描述】:

我使用的 API 只接受文件对象(open(file_name, 'r+b') 返回的 BufferedRandom 对象)。

但是,我手头的是一个变量(字节对象,由with open(file_name, "rb") as file: file.read()返回)

我想知道如何将此字节对象转换为 BufferedRandom 对象作为 API 的输入,因为如果我输入字节对象作为 API 函数的输入,我得到错误“字节”对象没有属性“阅读”。

非常感谢!

【问题讨论】:

    标签: python-3.x file io byte read-write


    【解决方案1】:

    找到答案here

    您可以使用以下方法将字节数据放入文件对象中:

    import io
    f = io.BytesIO(raw_bytes_data)
    

    现在f 的行为就像一个文件对象,具有readseek 等方法。 当我需要从一个 REDCap 数据库下载(导出)文件并使用PyCap 将它们上传(导入)到另一个时,我遇到了类似的问题。 export_file 方法将文件内容作为原始字节流返回,而 import_file 需要一个文件对象。适用于 Python 3。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-03
      • 2011-09-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多