溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用java怎么在后臺將base64字符串保存為圖片

發(fā)布時間:2020-12-05 16:37:40 來源:億速云 閱讀:407 作者:Leah 欄目:編程語言

本篇文章為大家展示了利用java怎么在后臺將base64字符串保存為圖片,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

具體方法如下:

import java.io.FileOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import sun.misc.BASE64Decoder; 
import sun.misc.BASE64Encoder; 
public class Base64Test  
{ 
  public static void main(String[] args) 
  { 
    String strImg = GetImageStr(); 
    System.out.println(strImg); 
    GenerateImage(strImg); 
  } 
  //圖片轉(zhuǎn)化成base64字符串 
  public static String GetImageStr() 
  {//將圖片文件轉(zhuǎn)化為字節(jié)數(shù)組字符串,并對其進行Base64編碼處理 
    String imgFile = "D:\\tupian\\a.jpg";//待處理的圖片 
    InputStream in = null; 
    byte[] data = null; 
    //讀取圖片字節(jié)數(shù)組 
    try  
    { 
      in = new FileInputStream(imgFile);     
      data = new byte[in.available()]; 
      in.read(data); 
      in.close(); 
    }  
    catch (IOException e)  
    { 
      e.printStackTrace(); 
    } 
    //對字節(jié)數(shù)組Base64編碼 
    BASE64Encoder encoder = new BASE64Encoder(); 
    return encoder.encode(data);//返回Base64編碼過的字節(jié)數(shù)組字符串 
  } 
   
  //base64字符串轉(zhuǎn)化成圖片 
  public static boolean GenerateImage(String imgStr) 
  {  //對字節(jié)數(shù)組字符串進行Base64解碼并生成圖片 
    if (imgStr == null) //圖像數(shù)據(jù)為空 
      return false; 
    BASE64Decoder decoder = new BASE64Decoder(); 
    try  
    { 
      //Base64解碼 
      byte[] b = decoder.decodeBuffer(imgStr); 
      for(int i=0;i<b.length;++i) 
      { 
        if(b[i]<0) 
        {//調(diào)整異常數(shù)據(jù) 
          b[i]+=256; 
        } 
      } 
      //生成jpeg圖片 
      String imgFilePath = "D:\\tupian\\new.jpg";//新生成的圖片 
      OutputStream out = new FileOutputStream(imgFilePath);   
      out.write(b); 
      out.flush(); 
      out.close(); 
      return true; 
    }  
    catch (Exception e)  
    { 
      return false; 
    } 
  } 
} 

上述內(nèi)容就是利用java怎么在后臺將base64字符串保存為圖片,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI