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

關于JAVA11中圖片與BASE64相互轉換的實現

 更新時間:2021年04月21日 09:50:22   作者:一個不想學習的程序員  
這篇文章主要介紹了關于JAVA11中圖片與BASE64相互轉換的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

由于jdk 1.8 之后sun.misc 包下的 BASE64Decode的依賴 被移除

我們需要在自己的項目中引入EncodeUtils 工具類 幫助我們進行轉換

public class EncodeUtils {
	
	private static final String DEFAULT_URL_ENCODING = "UTF-8";
	
	 /**
	  * Base64編碼.
	  */
	public static String base64Encode(byte[] input) {
	     return new String(Base64.encodeBase64(input));
	}
	
	/**
	 * Base64解碼.
	 */
	public static byte[] base64Decode(String input) {
	  return Base64.decodeBase64(input);
	}
}

在項目中測試

直接調用工具類中的方法即可

	/***
     * <p>
     * description: base64字符串轉圖片 
     * <p>
     * @see
     */
    static void base64StringToImage(String base64String) {
        try {
            byte[] bytes1 = EncodeUtils.base64Decode(base64String);
            ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);
            BufferedImage bi1 = ImageIO.read(bais);
            File f1 = new File("F:/wpcache/test/test.jpg");
            ImageIO.write(bi1, "jpg", f1);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

	/***
     * <p>
     * description:圖片轉base64字符串:
     * <p>
     * @see
     */
    public static String getImgStr(String imgFile) {
        // 將圖片文件轉化為字節(jié)數組字符串,并對其進行Base64編碼處理
        InputStream in = null;
        byte[] data = null;
        // 讀取圖片字節(jié)數組
        try {
            in = new FileInputStream(imgFile);
            data = new byte[in.available()];
            in.read(data);
            in.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return EncodeUtils.base64Encode(data);
    }

在main方法中運行

	public static void main(String[] args) {
        String base64Str = getImgStr("F:/wpcache/2.jpg");
        System.out.println(base64Str);
        base64StringToImage(base64Str);
    }

運行結果

圖片轉BASE64 效果圖

在這里插入圖片描述

BASE64 轉圖片 效果圖

(注:這個生成的圖片路徑就是自己在base64StringToImage 方法中的路徑)

在這里插入圖片描述

到此這篇關于關于JAVA11中圖片與BASE64相互轉換的實現的文章就介紹到這了,更多相關JAVA11圖片與BASE64相互轉換內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 淺析Java中的set集合類型及其接口的用法

    淺析Java中的set集合類型及其接口的用法

    Java本身對set集合提供了一個接口,一般的實現類是HastSet和 TreeSet,這里我們先來簡要淺析Java中的set集合類型及其接口的用法:
    2016-05-05
  • SpringBoot詳細講解斷言機制原理

    SpringBoot詳細講解斷言機制原理

    斷言Assertion是測試方法中的核心部分,用來對測試需要滿足的條件進行驗證。這些斷言方法都是org.junit.jupiter.api.Assertions的靜態(tài)方法。檢查業(yè)務邏輯返回的數據是否合理。所有的測試運行結束以后,會有一個詳細的測試報告
    2022-06-06
  • java數據類型和運算符的深入講解

    java數據類型和運算符的深入講解

    這篇文章主要給大家介紹了關于java數據類型和運算符的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • IDEA自動清理類中未使用的import包的操作方法

    IDEA自動清理類中未使用的import包的操作方法

    在項目開發(fā)中,經常會引入很多未使用的import包,這不僅增加了編譯時間,還會使代碼可讀性變差,設置IDEA自動清理未使用的import包,可以提高代碼的可讀性,本文給大家介紹IDEA自動清理類中未使用的import包的方法,感興趣的朋友一起看看吧
    2024-09-09
  • java實現將文件上傳到ftp服務器的方法

    java實現將文件上傳到ftp服務器的方法

    這篇文章主要介紹了java實現將文件上傳到ftp服務器的方法,結合實例形式分析了基于java實現的ftp文件傳輸類定義與使用方法,需要的朋友可以參考下
    2016-08-08
  • 詳解lambda表達式foreach性能分析

    詳解lambda表達式foreach性能分析

    這篇文章主要介紹了詳解lambda表達式foreach性能分析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • Idea2023配置JavaWeb項目(最新)

    Idea2023配置JavaWeb項目(最新)

    本文將介紹如何配置JavaWeb項目,以在Idea中實現開發(fā)環(huán)境,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-09-09
  • Spring使用RestTemplate模擬form提交示例

    Spring使用RestTemplate模擬form提交示例

    本篇文章主要介紹了Spring使用RestTemplate模擬form提交示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 關于SpringMVC中數據綁定@ModelAttribute注解的使用

    關于SpringMVC中數據綁定@ModelAttribute注解的使用

    這篇文章主要介紹了關于SpringMVC中數據綁定@ModelAttribute注解的使用,SpringMVC是一個基于Spring框架的Web框架,它提供了一種簡單、靈活的方式來開發(fā)Web應用程序,在開發(fā)Web應用程序時,我們需要將用戶提交的數據綁定到我們的Java對象上,需要的朋友可以參考下
    2023-07-07
  • 淺談java中replace()和replaceAll()的區(qū)別

    淺談java中replace()和replaceAll()的區(qū)別

    這篇文章主要介紹了java中replace()和replaceAll()的區(qū)別,兩者都是常用的替換字符的方法,感興趣的小伙伴們可以參考一下
    2015-11-11

最新評論