Convert Base64 to PNG/JPEG file in R

霸气de小男生 提交于 2019-12-29 07:09:27

问题


I have seen the process to convert a png file to base64 work in the post below Convert R image to Base 64

I would like to do the exact opposite of what you did. I have a base64 of a image stored in a variable "capimg" and now I want to convert it into a png or jpeg file. Can you help me reverse engineer the process.

Is this doable?

I have seen this done using php like below but I need a R script to do the same

<?php
$data = urldecode($_POST['imageData']);
list($type, $data) = explode(';', $data);
list(, $data)      = explode(',', $data);
$data = base64_decode($data);
file_put_contents('image.png', $data);
?>

In fact I am also able to decode the base64 into a vector using the base64enc package like below y <- base64decode(capimg)

But I do not know how to proceed any further


回答1:


this works for me:

library(base64enc)

enc <- base64encode("images.jpg")
conn <- file("w.bin","wb")
writeBin(enc, conn)
close(conn)

inconn <- file("w.bin","rb")
outconn <- file("img2.jpg","wb")
base64decode(what=inconn, output=outconn)
close(inconn)
close(outconn)

images.jpg courtesy of Wikipedia accessed from here



来源:https://stackoverflow.com/questions/36708191/convert-base64-to-png-jpeg-file-in-r

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!