I have a jpg file under the tmp folder.
upload_path = /tmp/resized-test.jpg
I have been using the codes below:
Method 1
with open(upload_path, "rb") as image_file:
encoded_string = base64.b64encode(image_file.read())
Method 2
def imgToHex(file):
string = ''
with open(file, 'rb') as f:
binValue = f.read(1)
while len(binValue) != 0:
hexVal = hex(ord(binValue))
string += '\\' + hexVal
binValue = f.read(1)
string = re.sub('0x', 'x', string) # Replace '0x' with 'x' for your needs
return string
imgToHex(upload_path)
But none of them are working as I want.
解决方案
You can use the binascii package for this. It will convert it in to a hex string.
import binascii
filename = 'test.png'
with open(filename, 'rb') as f:
content = f.read()
print(binascii.hexlify(content))