J'ai une image codée en base64. Je suis coller les premiers caractèresCréation d'un fichier image à partir de données base64
string='data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD /2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopG R8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgo......'
que je fais ci-dessous pour en rubis
decoded_string=Base64.decode64 string
output_file = Tempfile.new(['image','.jpeg'])
output_file.binmode
output_file.write image
Après quand je suis l'ouverture « image.jpeg », Il donne erreur
Error interpreting JPEG image file (Not a JPEG file: starts with 0x75 0xab)
J'ai aussi essayé
File.open('a.jpeg', 'wb') do|f|
f.write decoded_string
end
Dans ce cas aussi, j'ai eu la même erreur.
Qu'est-ce que je fais mal?
'data: image/jpeg; base64,' au début de la chaîne encodée était à l'origine de ce problème. J'ai juste dû enlever cela et tout a bien fonctionné. – Rndomcoder