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

各種格式的編碼解碼工具類分享(hex解碼 base64編碼)

 更新時間:2014年01月28日 15:11:57   作者:  
這篇文章主要介紹了各種格式的編碼解碼工具類,集成Commons-Codec、Commons-Lang及JDK提供的編解碼方法

復(fù)制代碼 代碼如下:

import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;

import org.apache.commons.codec.DecoderException;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.lang.StringEscapeUtils;

/**
 * 各種格式的編碼加碼工具類.
 *
 * 集成Commons-Codec,Commons-Lang及JDK提供的編解碼方法.
 *
 * 
 */
public class EncodeUtils {

 private static final String DEFAULT_URL_ENCODING = "UTF-8";

 /**
  * Hex編碼.
  */
 /*public static String hexEncode(byte[] input) {
  return Hex.encodeHexString(input);
 }*/

 /**
  * Hex解碼.
  */
 public static byte[] hexDecode(String input) {
  try {
   return Hex.decodeHex(input.toCharArray());
  } catch (DecoderException e) {
   throw new IllegalStateException("Hex Decoder exception", e);
  }
 }

 /**
  * Base64編碼.
  */
 public static String base64Encode(byte[] input) {
  return new String(Base64.encodeBase64(input));
 }

 /**
  * Base64編碼, URL安全(將Base64中的URL非法字符�?,/=轉(zhuǎn)為其他字符, 見RFC3548).
  */
 public static String base64UrlSafeEncode(byte[] input) {
  return Base64.encodeBase64URLSafeString(input);
 }

 /**
  * Base64解碼.
  */
 public static byte[] base64Decode(String input) {
  return Base64.decodeBase64(input);
 }

 /**
  * URL 編碼, Encode默認為UTF-8.
  */
 public static String urlEncode(String input) {
  try {
   return URLEncoder.encode(input, DEFAULT_URL_ENCODING);
  } catch (UnsupportedEncodingException e) {
   throw new IllegalArgumentException("Unsupported Encoding Exception", e);
  }
 }

 /**
  * URL 解碼, Encode默認為UTF-8.
  */
 public static String urlDecode(String input) {
  try {
   return URLDecoder.decode(input, DEFAULT_URL_ENCODING);
  } catch (UnsupportedEncodingException e) {
   throw new IllegalArgumentException("Unsupported Encoding Exception", e);
  }
 }

 /**
  * Html 轉(zhuǎn)碼.
  */
 public static String htmlEscape(String html) {
  return StringEscapeUtils.escapeHtml(html);
 }

 /**
  * Html 解碼.
  */
 public static String htmlUnescape(String htmlEscaped) {
  return StringEscapeUtils.unescapeHtml(htmlEscaped);
 }

 /**
  * Xml 轉(zhuǎn)碼.
  */
 public static String xmlEscape(String xml) {
  return StringEscapeUtils.escapeXml(xml);
 }

 /**
  * Xml 解碼.
  */
 public static String xmlUnescape(String xmlEscaped) {
  return StringEscapeUtils.unescapeXml(xmlEscaped);
 }
}

相關(guān)文章

  • Java設(shè)計模式之java模板方法模式詳解

    Java設(shè)計模式之java模板方法模式詳解

    這篇文章主要介紹了Java設(shè)計模式模板方法模式(Template)用法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2021-09-09
  • Java語言簡介(動力節(jié)點Java學(xué)院整理)

    Java語言簡介(動力節(jié)點Java學(xué)院整理)

    Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征,下面通過本文給大家分享java語言的簡介,感興趣的朋友一起看看吧
    2017-03-03
  • Java詳解ScriptEngine接口動態(tài)執(zhí)行JS腳本

    Java詳解ScriptEngine接口動態(tài)執(zhí)行JS腳本

    ScriptEngine是基本接口,其方法必須在本規(guī)范的每個實現(xiàn)中完全起作用。這些方法提供基本腳本功能。 寫入這個簡單接口的應(yīng)用程序可以在每個實現(xiàn)中進行最少的修改。 它包括執(zhí)行腳本的方法,以及設(shè)置和獲取值的方法
    2022-08-08
  • 如何通過idea給web項目打war包

    如何通過idea給web項目打war包

    這篇文章主要介紹了如何通過idea給web項目打war包問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • SpringBoot單機限流的實現(xiàn)

    SpringBoot單機限流的實現(xiàn)

    在系統(tǒng)運維中, 有時候為了避免用戶的惡意刷接口, 會加入一定規(guī)則的限流,本文主要介紹了SpringBoot單機限流的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • selenium+java破解極驗滑動驗證碼的示例代碼

    selenium+java破解極驗滑動驗證碼的示例代碼

    本篇文章主要介紹了selenium+java破解極驗滑動驗證碼的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • 詳解java封裝繼承多態(tài)

    詳解java封裝繼承多態(tài)

    這篇文章主要介紹了java封裝繼承多態(tài),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • spring boot + jpa + kotlin入門實例詳解

    spring boot + jpa + kotlin入門實例詳解

    這篇文章主要介紹了spring boot + jpa + kotlin入門實例詳解 ,需要的朋友可以參考下
    2017-07-07
  • java多線程下載文件原理解析

    java多線程下載文件原理解析

    這篇文章主要為大家詳細介紹了java多線程下載文件原理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Java?toString方法使用超全講解

    Java?toString方法使用超全講解

    在Java中所有的類都有一個共同的父類Object(默認繼承,不用加extends關(guān)鍵字),toString方法就是Object類的一個方法,用來返回該對象的字符串表示形式,下面這篇文章主要給大家介紹了關(guān)于Java?toString方法使用的相關(guān)資料,需要的朋友可以參考下
    2023-05-05

最新評論