JAVA將Base64的加密字符串轉(zhuǎn)為圖片格式實(shí)戰(zhàn)案例
前言
Base64 是一種將二進(jìn)制數(shù)據(jù)編碼為文本的方式,通常用于傳輸和存儲(chǔ)媒體文件(如圖像、音頻)以及其他二進(jìn)制數(shù)據(jù)。它的主要作用是將非文本數(shù)據(jù)轉(zhuǎn)換為可安全傳輸?shù)奈谋緮?shù)據(jù)。
案例:
java.util.Base64中提供方法逆解碼加密數(shù)據(jù),使用Base64.getDecoder().decode()方法逆解碼后會(huì)返回字節(jié)數(shù)據(jù),接收后即是加密文件的數(shù)據(jù)本
代碼:
// 解碼 Base64 字符串 byte[] decodedBytes =Base64.decodeBase64(as); // 設(shè)置項(xiàng)目路徑下的文件路徑(例如保存為當(dāng)前工作目錄下的 decoded_image.jpg) String filePath = "/picture/"+name; // 保存解碼后的字節(jié)數(shù)組為圖像文件 try (FileOutputStream fos = new FileOutputStream(filePath)) { fos.write(decodedBytes); System.out.println("文件已成功保存為: " + filePath); } catch (IOException e) { e.printStackTrace(); }
以上代碼邏輯,as屬性存放的是base64加密后的數(shù)據(jù),通過方法進(jìn)行解碼后成為Byte類型的數(shù)組,定義文件路徑后將文件存儲(chǔ)
以上為base64加密數(shù)據(jù)的處理方式
附:將圖片轉(zhuǎn)成base64
var img = "https://img2.baidu.com/it/u=2163681967,1120787845&fm=253&fmt=auto&app=138&f=PNG?w=200&h=267"; function getBase64Image(img) { var canvas = document.createElement("canvas"); console.log(img.width,img.height) canvas.width = img.width; canvas.height = img.height; var ctx = canvas.getContext("2d"); ctx.drawImage(img, 20, 20, 200, 200); var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase(); var dataURL = canvas.toDataURL("image/"+ext); return dataURL; } var canvas=document.querySelector('canvas'); // 獲取畫筆 var context=canvas.getContext('2d'); // 創(chuàng)建一個(gè)img標(biāo)簽 構(gòu)造函數(shù)方式new Image(); var image=new Image(); image.crossOrigin = 'anonymous'; // console.log(img); image.src=img console.log('image',image) // 繪制圖片,drawImage有5個(gè)參數(shù):要繪制得圖片/視頻,開始x、y軸位置,寬高 image.onload=function(){ context.drawImage(image,0,0,200,200); var base64 = getBase64Image(image); console.log(base64); }
總結(jié)
到此這篇關(guān)于JAVA將Base64的加密字符串轉(zhuǎn)為圖片格式的文章就介紹到這了,更多相關(guān)JAVA將Base64轉(zhuǎn)為圖片格式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Python實(shí)現(xiàn)對(duì)比Exce的工具
這篇文章主要介紹了基于Python實(shí)現(xiàn)對(duì)比Excel的小工具,通過循環(huán)對(duì)比組合列(主鍵+對(duì)比列)結(jié)合示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2022-04-04python簡(jiǎn)單實(shí)現(xiàn)計(jì)算過期時(shí)間的方法
這篇文章主要介紹了python簡(jiǎn)單實(shí)現(xiàn)計(jì)算過期時(shí)間的方法,涉及Python時(shí)間操作的相關(guān)技巧,需要的朋友可以參考下2015-06-06python用opencv批量截取圖像指定區(qū)域的方法
今天小編就為大家分享一篇python用opencv批量截取圖像指定區(qū)域的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01python3模擬百度登錄并實(shí)現(xiàn)百度貼吧簽到示例分享(百度貼吧自動(dòng)簽到)
這篇文章主要介紹了python3模擬百度登錄并實(shí)現(xiàn)百度貼吧簽到示例,需要的朋友可以參考下2014-02-02Python實(shí)戰(zhàn)之手勢(shì)識(shí)別控制電腦音量
這篇文章主要為大家詳細(xì)介紹了一個(gè)Python OpenCV的實(shí)戰(zhàn)小項(xiàng)目——手勢(shì)識(shí)別控制電腦音量,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-05-05