欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java 圖片與base64相互轉(zhuǎn)化的示例

 更新時間:2020年10月24日 08:57:27   作者:Marydon  
這篇文章主要介紹了java 圖片與base64相互轉(zhuǎn)化的示例,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下

需要導入:

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.UUID;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
/**
 * 圖片轉(zhuǎn)base64字符串
 * @param path
 * @return
 */
public static String PictoBase64(String path) {
  InputStream in = null;
  byte[] data = null;
  // 讀取圖片字節(jié)數(shù)組
  try {
    in = new FileInputStream(path);
    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寫圖片
 * @param imgStr
 * @return
 */
public static boolean Base64toPic(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;
      }
    }
    String imgName = UUID.randomUUID().toString().replace("-", "");
    String imgType = ".png";
    // 生成png圖片
    String imgFilePath = "C:/Users/Administrator/Desktop/" + imgName + imgType;// 新生成的圖片
    OutputStream out = new FileOutputStream(imgFilePath);
    out.write(b);
    out.flush();
    out.close();
    return true;
  } catch (Exception e) {
    return false;
  }
}

以上就是java 圖片與base64相互轉(zhuǎn)化的示例的詳細內(nèi)容,更多關(guān)于java 圖片與base64相互轉(zhuǎn)化的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java設計模式之備忘錄模式

    Java設計模式之備忘錄模式

    這篇文章介紹了Java設計模式之備忘錄模式,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-10-10
  • java?io文件操作從文件讀取數(shù)據(jù)的六種方法

    java?io文件操作從文件讀取數(shù)據(jù)的六種方法

    這篇文章主要為大家介紹了java?io操作總結(jié)從文件讀取數(shù)據(jù)的六種方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-03-03
  • springboot+vue實現(xiàn)登錄功能

    springboot+vue實現(xiàn)登錄功能

    這篇文章主要為大家詳細介紹了springboot+vue實現(xiàn)登錄功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • JAVA加密算法- 非對稱加密算法(DH,RSA)的詳細介紹

    JAVA加密算法- 非對稱加密算法(DH,RSA)的詳細介紹

    這篇文章主要介紹了JAVA加密算法- 非對稱加密算法(DH,RSA),詳細介紹了DH,RSA的用法和示例,需要的朋友可以了解一下。
    2016-11-11
  • 詳解elasticsearch之metric聚合實現(xiàn)示例

    詳解elasticsearch之metric聚合實現(xiàn)示例

    這篇文章主要為大家介紹了elasticsearch之metric聚合實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01
  • Elasticsearch term 查詢之精確值搜索功能實現(xiàn)

    Elasticsearch term 查詢之精確值搜索功能實現(xiàn)

    term查詢是Elasticsearch中用于精確值搜索的一種基本方式,通過了解 term 查詢的工作原理和使用方法,你可以更好地利用 Elasticsearch 進行結(jié)構(gòu)化數(shù)據(jù)的搜索和分析,本文將詳細介紹 term 查詢的工作原理、使用場景以及如何在 Elasticsearch 中應用它,感興趣的朋友一起看看吧
    2024-06-06
  • java音樂播放器實現(xiàn)代碼

    java音樂播放器實現(xiàn)代碼

    這篇文章主要介紹了java音樂播放器的實現(xiàn)代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 詳解Java語言中的抽象類與繼承

    詳解Java語言中的抽象類與繼承

    這篇文章主要為大家詳細介紹了Java語言中的抽象類與繼承的相關(guān)資料,文中的示例代碼講解詳細,對我們學習Java有一定的幫助,感興趣的小伙伴快跟隨小編一起了解一下
    2022-10-10
  • idea關(guān)閉vim編輯模式的操作

    idea關(guān)閉vim編輯模式的操作

    這篇文章主要介紹了idea關(guān)閉vim編輯模式的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java時間復雜度、空間復雜度的深入詳解

    Java時間復雜度、空間復雜度的深入詳解

    對于一個算法,其時間復雜度和空間復雜度往往是相互影響的,當追求一個較好的時間復雜度時,可能會使空間復雜度的性能變差,即可能導致占用較多的存儲空間,這篇文章主要給大家介紹了關(guān)于Java時間復雜度、空間復雜度的相關(guān)資料,需要的朋友可以參考下
    2021-11-11

最新評論