直播平台制作,base64图片字符串和file之间互相转换

直播平台制作,base64图片字符串和file之间互相转换

1
import sun.misc.BASE64Decoder;<br>import sun.misc.BASE64Encoder;<br> <br>import java.io.*;<br> <br>public class Base64Img {<br> <br>//图片转化成base64字符串<br> <br>public static String GetImageStr(File imgFile) {//将图片文件转化为字节数组字符串,并对其进行Base64编码处理<br> <br>InputStream in = null;<br> <br>byte[] data = null;<br> <br>//读取图片字节数组<br> <br>try {<br> <br>in = new FileInputStream(imgFile);<br> <br>data = new byte[in.available()];<br> <br>in.read(data);<br> <br>in.close();<br> <br>} catch (IOException e) {<br> <br>e.printStackTrace();<br> <br>}<br> <br>//对字节数组Base64编码<br> <br>BASE64Encoder encoder = new BASE64Encoder();<br> <br>return encoder.encode(data);//返回Base64编码过的字节数组字符串<br> <br>}<br> <br> <br>//base64字符串转化成图片<br>public static File base64ToFile(String base64, String fileName) throws Exception {<br>if(base64.contains("data:image")){<br>base64 = base64.substring(base64.indexOf(",")+1);<br>}<br>base64 = base64.toString().replace("\r\n", "");<br>File file = null;<br>//创建文件目录<br>String filePath=Const.TEMP_PATH;<br>File  dir=new File(filePath);<br>if (!dir.exists() && !dir.isDirectory()) {<br>dir.mkdirs();<br>}<br>BufferedOutputStream bos = null;<br>java.io.FileOutputStream fos = null;<br>try {<br>BASE64Decoder decoder = new BASE64Decoder();<br>byte[] bytes =  decoder.decodeBuffer(base64);<br> <br>file=new File(filePath+Const.F+fileName);<br>OutputStream out = new FileOutputStream(filePath+Const.F+fileName);<br>fos = new FileOutputStream(file);<br>bos = new BufferedOutputStream(fos);<br>bos.write(bytes);<br>}finally {<br>if (bos != null) {<br>try {<br>bos.close();<br>} catch (IOException e) {<br>e.printStackTrace();<br>}<br>}<br>if (fos != null) {<br>try {<br>fos.close();<br>} catch (IOException e) {<br>e.printStackTrace();<br>}<br>}<br>}<br>return file;<br>}<br> <br>}

​以上就是 直播平台制作,base64图片字符串和file之间互相转换,更多内容欢迎关注之后的文章

 

posted @   云豹科技-苏凌霄  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示