Python 如何将文本字符串(我认为是bytearray)转换为图像?
我正在尝试使用python PIL将我认为是从数据库中提取的字节数组转换为图像 我可以访问imagetype(jpg、png等)、图像高度/宽度和bytearray。bytearray的格式是 0xFFD8FFE0000104A464946000101010060006000FF111164578 我已经尝试了许多PIL选项,例如.fromstring和.frombuffer。我还尝试将bytearray转换为其他形式(Base64等),然后将其转换为图像。所有这些都不起作用,并且图像文件总是损坏 如果我遵循以下建议: 我收到以下错误:IOError:无法识别图像文件 类型(imagestring)返回类型“bytearray”Python 如何将文本字符串(我认为是bytearray)转换为图像?,python,Python,我正在尝试使用python PIL将我认为是从数据库中提取的字节数组转换为图像 我可以访问imagetype(jpg、png等)、图像高度/宽度和bytearray。bytearray的格式是 0xFFD8FFE0000104A464946000101010060006000FF111164578 我已经尝试了许多PIL选项,例如.fromstring和.frombuffer。我还尝试将bytearray转换为其他形式(Base64等),然后将其转换为图像。所有这些都不起作用,并且图像文件总是损
感谢您的阅读和解答,请告诉我是否应该编辑这篇文章并提供更多信息。我无法解释为什么会出现0x,以及其他人是否会遇到问题,但我必须从字符串的开头删除0x: 0xFFD8FFE0000104A464946000101010060006000FFE1164578 守则:
image = Image.open(io.BytesIO(imagestring))
image.save(imageToSave.jpg)
在那之后工作正常我无法解释为什么会有0x,以及其他人是否会遇到问题,但我必须从字符串的开头删除0x: 0xFFD8FFE0000104A464946000101010060006000FFE1164578 守则:
image = Image.open(io.BytesIO(imagestring))
image.save(imageToSave.jpg)
在那之后工作得很好没有必要做这个假设,
type(imagestring)
给了你什么?我打赌它是一个字节对象。但是,确切地说,你是如何从数据库中提取这些数据的呢?它会返回。我使用python连接从mssql数据库中提取它。因此,听起来好像你从数据库中提取的东西不是枕头可以处理的。也许是base64编码的?很难说。但是我已经多次使用过这种结构,不需要做这样的假设,type(imagestring)
给了你什么?我打赌它是一个字节对象。但是,确切地说,你是如何从数据库中提取这些数据的呢?它会返回。我使用python连接从mssql数据库中提取它。因此,听起来好像你从数据库中提取的东西不是枕头可以处理的。也许是base64编码的?很难说。但我已经用过很多次了