最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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)容,更多關于java 圖片與base64相互轉(zhuǎn)化的資料請關注腳本之家其它相關文章!

相關文章

  • Spring中的@PostConstruct注解使用方法解析

    Spring中的@PostConstruct注解使用方法解析

    這篇文章主要介紹了Spring中的@PostConstruct注解使用方法解析,@PostConstruct注解是用來處理在@Autowired注入屬性后init()方法之前,對一些零散的屬性進行賦值的注解,需要的朋友可以參考下
    2023-11-11
  • Java?Mybatis的初始化之Mapper.xml映射文件的詳解

    Java?Mybatis的初始化之Mapper.xml映射文件的詳解

    這篇文章主要介紹了Java?Mybatis的初始化之Mapper.xml映射文件的詳解,解析完全局配置文件后接下來就是解析Mapper文件了,它是通過XMLMapperBuilder來進行解析的
    2022-08-08
  • Java實現(xiàn)字節(jié)數(shù)B轉(zhuǎn)化為KB、MB、GB的方法示例【測試可用】

    Java實現(xiàn)字節(jié)數(shù)B轉(zhuǎn)化為KB、MB、GB的方法示例【測試可用】

    這篇文章主要介紹了Java實現(xiàn)字節(jié)數(shù)B轉(zhuǎn)化為KB、MB、GB的方法,結(jié)合實例形式分析了java字節(jié)數(shù)的轉(zhuǎn)換運算相關操作技巧,需要的朋友可以參考下
    2017-08-08
  • spring security如何擴展自定義登錄

    spring security如何擴展自定義登錄

    本文詳細介紹了Spring Security的認證原理和具體實現(xiàn),認證原理基于過濾器鏈,通過驗證用戶憑證和構(gòu)建認證對象來保護應用程序資源,實現(xiàn)自定義認證功能的步驟包括創(chuàng)建自定義認證提供程序、實現(xiàn)UserDetailsService接口以及在配置類中進行相應的配置
    2024-11-11
  • Java HashMap的工作原理

    Java HashMap的工作原理

    這篇文章主要介紹了Java HashMap的工作原理的相關資料,需要的朋友可以參考下
    2016-03-03
  • java不使用第三變量交換兩個變量的值

    java不使用第三變量交換兩個變量的值

    這篇文章主要介紹了java不使用第三變量交換兩個變量的值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Maven項目分析剔除無用jar引用的方法步驟

    Maven項目分析剔除無用jar引用的方法步驟

    這篇文章主要介紹了Maven項目分析剔除無用jar引用的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • System 類 和 Runtime 類的常用用法介紹

    System 類 和 Runtime 類的常用用法介紹

    這篇文章主要介紹了System 類 和 Runtime 類的常用用法,有需要的朋友可以參考一下
    2014-01-01
  • java代理 jdk動態(tài)代理應用案列

    java代理 jdk動態(tài)代理應用案列

    java代理有jdk動態(tài)代理、cglib代理,這里只說下jdk動態(tài)代理,jdk動態(tài)代理主要使用的是java反射機制,需要了解的朋友可以參考下
    2012-11-11
  • Spring Boot開啟的2種方式詳解

    Spring Boot開啟的2種方式詳解

    這篇文章主要介紹了Spring Boot開啟的2種方式詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05

最新評論

仪征市| 渭源县| 武邑县| 沁水县| 万州区| 茌平县| 麦盖提县| 盐城市| 商河县| 镇宁| 兴国县| 中山市| 宾川县| 唐海县| 诸暨市| 惠东县| 岚皋县| 西青区| 玛曲县| 灵台县| 滦南县| 若尔盖县| 阆中市| 尉犁县| 宜君县| 通州区| 潮州市| 平原县| 永吉县| 宝清县| 慈溪市| 扎囊县| 田阳县| 建瓯市| 仙游县| 西畴县| 普宁市| 玛多县| 江西省| 宝鸡市| 金平|