国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java實現(xiàn)Base64編碼以及原理詳解

這篇具有很好參考價值的文章主要介紹了Java實現(xiàn)Base64編碼以及原理詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Java實現(xiàn)

使用java.util.Base64類來實現(xiàn)Base64編碼。

該類是Java8引入的。

String str = "sd";
System.out.println("str:" + str);

// 進行Base64編碼
byte[] bytes = str.getBytes("utf-8");
String encode = Base64.getEncoder().encodeToString(bytes);
System.out.println("encode:" + encode);

// 進行Base64解碼
byte[] bytes1 = Base64.getDecoder().decode(encode);
String decode = new String(bytes1, "utf-8");
System.out.println("decode:" + decode);
輸出:

str:sd
encode:c2Q=
decode:sd

上面就是java實現(xiàn)的代碼,使用起來是很方便的。下面來說說Base64編碼的原理。

Base64編碼

Base64編碼的作用:將字符串轉(zhuǎn)為由64個特定字符組成的編碼,這種編碼方式適用于不支持特定編碼的情況。

詳解

一、

首先來看,原字符串是“sd”。將字符串轉(zhuǎn)為二進制編碼形式。這里是采用utf-8。

s的編碼:115。二進制展示是:01110011。

d的編碼:100。二進制展示是:01100100。

上面的二進制是8個字節(jié)的,由于要轉(zhuǎn)換為64個字符展示的字符串,所以需要以6個字節(jié)作為一個單位來展示。

我們將兩個編碼合并起來:0111001101100100

二、

由于現(xiàn)在是16個字節(jié)(8+8),如果以6個字節(jié)為單位的話,字節(jié)數(shù)量是不夠的。

因此在后面補0:011100110110010000

三、

然后以6個字節(jié)為單位分割該編碼:011100,110110,010000

再轉(zhuǎn)換為十進制表示:28,54,16

四、

根據(jù)下面表格,找到索引對應(yīng)的字符,得到Base64編碼的結(jié)果:c2Q

java實現(xiàn)base64編碼,Java,java,算法

--圖片來源base64百度百科

五、

通常,編碼結(jié)果不滿4個字符時,會在后面補上=

因此編碼的最終結(jié)果是:c2Q=

既然編碼方式知道了,那么解碼方式也就知道了。這里就不詳細再說了。文章來源地址http://www.zghlxwxcb.cn/news/detail-631435.html

到了這里,關(guān)于Java實現(xiàn)Base64編碼以及原理詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • java使用hutool把服務(wù)器圖片鏈接轉(zhuǎn)為base64編碼

    需求是把服務(wù)器的圖片鏈接或者網(wǎng)上的圖片鏈接地址轉(zhuǎn)為base64位編碼方便前端操作 base64編碼轉(zhuǎn)為圖片在線網(wǎng)址 https://imgtobase64.d777.com/ 1.1 引入依賴 1.2 代碼

    2024年02月12日
    瀏覽(20)
  • Java的Base64加密解密詳解

    大家好,我是免費搭建查券返利機器人賺傭金就用微賺淘客系統(tǒng)3.0的小編,也是冬天不穿秋褲,天冷也要風(fēng)度的程序猿! 在當(dāng)今數(shù)字化時代,數(shù)據(jù)的安全性和可傳遞性變得尤為重要。Java編程語言提供了 Base64 編碼和解碼的工具,成為保障數(shù)據(jù)傳輸和存儲安全性的一項重要技術(shù)

    2024年04月15日
    瀏覽(33)
  • uniapp不同平臺獲取文件內(nèi)容以及base64編碼特征

    uniapp不同平臺獲取文件內(nèi)容以及base64編碼特征

    文件圖片上傳,客戶端預(yù)覽是很正常的需求,獲取文件的md5特征碼也是很正常的,那么,在uniapp中三種環(huán)境,h5, 小程序以及 app環(huán)境下,如何實現(xiàn)的? 參考: 如何在uniapp中讀取文件ArrayBuffer和sha256哈希值,支持H5、APP、小程序 uniapp 沒有提供跨平臺的 API 來獲取文件的 sha256 哈

    2024年02月20日
    瀏覽(20)
  • base64編碼:js實現(xiàn)base64編碼的3種方式,多場景下分析使用

    js實現(xiàn)base64編碼,前端一般應(yīng)用場景在與后端接口參數(shù)中體現(xiàn),后端可能需要某個字段是base64編碼的字符,這時候就需要用前端的方法進行轉(zhuǎn)換,再作為參數(shù)傳遞到服務(wù)端。 js實現(xiàn)base64編碼的3種方式 1. 使用base64.js進行轉(zhuǎn)換 獲取base64.js,可以直接搜索base64.js下載。推薦使用n

    2024年02月16日
    瀏覽(18)
  • 后臺傳輸圖片給前端的Base64編碼方法及原理解析

    后臺傳輸圖片給前端的Base64編碼方法及原理解析

    探索后臺向前端傳輸圖片的方式之一:通過Base64編碼將圖片轉(zhuǎn)換為字符串?dāng)?shù)據(jù),并在前端顯示圖片。本文詳細介紹了Base64編碼的原理、轉(zhuǎn)換步驟以及位數(shù)不足情況的處理方法,幫助理解Base64編碼的工作原理。

    2024年02月04日
    瀏覽(42)
  • 前端實現(xiàn)base64編碼處理

    文件上傳時,因為base64文件字符串過長后端接收失敗的問題。 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 Base64是一種用于將二進制數(shù)據(jù)轉(zhuǎn)換為ASCII字符集中可打印字符的編碼方法。它通常用于在不同系統(tǒng)之間傳輸二進制數(shù)據(jù),因為許多系統(tǒng)只支持文本數(shù)據(jù)的傳輸。 代

    2024年02月12日
    瀏覽(39)
  • 『CV學(xué)習(xí)筆記』Opencv和PIL Image以及base64編碼互相轉(zhuǎn)化

    Opencv和PIL Image以及base64編碼互相轉(zhuǎn)化

    2024年02月13日
    瀏覽(21)
  • JAVA實現(xiàn)網(wǎng)絡(luò)/本地圖片轉(zhuǎn)BASE64存儲

    網(wǎng)絡(luò)圖片轉(zhuǎn)BASE64 如果是本地圖片的話,其實和網(wǎng)絡(luò)圖片相差不多的,主要就是讀取圖片流的形式變一下 若有問題,可以留言探討。

    2024年02月13日
    瀏覽(17)
  • base64的標(biāo)準(zhǔn)編碼與URL編碼的區(qū)別-go實現(xiàn)

    package?main /* 介紹及作用: 1、base64編碼是程序開發(fā)中常使用的編碼格式,因為更適合不同的平臺、不同的語言傳輸, 通常用于存儲、傳輸一些二進制數(shù)據(jù)編碼方法,即將二進制數(shù)據(jù)文本化(轉(zhuǎn)化成ASCII)。比如有些系統(tǒng)只能使用ASCII字符,就可用base64將非ASCII字符數(shù)據(jù)轉(zhuǎn)化為

    2023年04月11日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包