`

EncodeUtil(各种格式的编码解码工具类)

阅读更多

各种格式的编码解码工具类.

集成Commons-Codec,Commons-Lang及JDK提供的编解码方法

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非法字符�?,/=转为其他字符, 见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 转码.
	 */
	public static String htmlEscape(String html) {
		return StringEscapeUtils.escapeHtml(html);
	}

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

	/**
	 * Xml 转码.
	 */
	public static String xmlEscape(String xml) {
		return StringEscapeUtils.escapeXml(xml);
	}

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

 

0
0
分享到:
评论

相关推荐

    封装各种格式的编码解码工具类

    /** * 封装各种格式的编码解码工具类. * 1.Commons-Codec的 hex/base64 编码 * 2.自制的base62 编码 * 3.Commons-Lang的xml/html escape * 4.JDK提供的URLEncoder */

    UTF-7 编码解码工具

    UTF-7,编码解码工具,可直接用于跨站脚本攻击xss

    Base64编码解码工具成品+源码

    在本压缩包中,包含了一个名为"Base64编码解码.e"的易语言源码文件和一个编译好的可执行文件"Base64解码工具.exe"。易语言是一种简洁明了的中文编程语言,旨在让普通用户也能轻松进行程序开发。使用易语言编写Base64...

    base64-编码解码工具-python实现源码

    在提供的压缩包文件"base64"中,可能包含了更具体的Base64编码解码工具的实现,例如自定义类或扩展功能。这些源码可以作为学习和理解Base64编码工作原理的实例,也可以作为基础,帮助你开发更复杂的应用,如文件的...

    网页版PDU格式编码_解码

    网页版的"PDU格式编码_解码"工具是一款实用的应用,专为处理短信通信中的PDU(Protocol Data Unit)格式而设计。PDU是GSM系统中用于短信服务(SMS)的数据格式,它包含了短信的地址信息、控制信息以及实际的文本数据...

    各种编码解码工具包

    各种编码解码离线工具,包括base64,url,SHA256等等。

    Base64编码解码工具

    此工具为Base64 编码解码工具, 需要Java运行环境,所以是实用于Java开发人员需要临时进行Base64编码的处理。

    java验证文件真实格式和编码格式工具类

    `java验证文件真实格式和编码格式工具类` 提供的功能对于处理不同来源的文件至关重要,尤其是在处理用户上传的文件或跨平台数据交换时。通过`VerifyFileType.java` 和 `VerifyFileEncoder.java`,开发者可以确保正确...

    C++ 版本UrlEncoder编码解码工具:支持ANSIC和UTF8格式

    C++ 版本UrlEncoder编码解码工具:支持ANSIC和UTF8格式,是URLEncoderHTML 格式编码的实用工具类。详情参照文章:...

    PDU 编解码工具

    标题中的“PDU 编解码工具”是指用于处理PDU(Protocol Data Unit)格式的软件,这种格式常用于SMS(Short Message Service)短信服务。PDU是GSM(Global System for Mobile Communications)网络中短信数据传输的...

    PDU 短信编解码工具(升级版)

    PDU短信编解码工具是IT领域中一种实用的软件...总的来说,PDU短信编解码工具通过其强大的功能,极大地简化了与PDU编码相关的开发工作,提升了开发效率,对于从事短信服务相关开发的工程师来说,是一个不可或缺的助手。

    短信UCS编码或解码工具

    在使用"短信UCS编码或解码工具"时,开发人员可以方便地处理不同编码格式之间的转换,比如从用户输入的文本(可能是UTF-8编码)转换为适合短信传输的7位编码,或者从接收到的PDU格式短信解码成可读的文本。这种工具...

    URL编码解码小工具

    这个"URL编码解码小工具"是一款便捷的应用程序,它提供对GB2312和UTF8两种字符集的编码和解码功能,满足不同编码需求。 在URL编码中,非ASCII字符和某些特殊字符(如空格、#、%、&等)会被转换为百分号(%)加两位...

    URL编码解码免费小工具

    在【压缩包子文件的文件名称列表】中提到的"URL编码解码.exe"是一个可执行文件,可能是上述描述的URL编码解码工具。用户只需双击运行此文件,即可启动工具进行操作。使用时,只需按照界面提示输入待处理的URL或字符...

    随波逐流CTF编码工具 V4.1 免更新版

    [随波逐流]CTF编码工具:一站式编码解码解决方案,您的全能编码解码助手。 作为一款功能强大且操作便捷的编码解码神器,[随波逐流]CTF编码工具是网络安全、密码学及信息技术领域用户的首选。它汇聚了众多经典与创新...

    jsfuck自动解码工具.html

    jsfuck自动解码工具

    pdu模式短信编码解码程序

    pdu模式短信编码解码程序 包括gb2312,Unicode码表转换等,非常有用

    URL编码解码工具 反向分析URL地址

    URL编码与解码是互联网通信中的重要环节,它涉及到数据在网络中传输时的标准化..."URL编码解码工具.exe" 提供了一个直观、便捷的方式来操作和分析URL,对于IT从业者,尤其是Web开发者来说,是一个非常实用的辅助工具。

    字符编码解码整合工具 native2ascii.exe

    字符编码解码整合工具字符编码解码整合工具字符编码解码整合工具

    java各种工具类:精确的数学运算、将String进行base64编码解码、树的递归、判断是否为空等

    java各种工具类:精确的数学运算、将String进行base64编码解码、树的递归等 包含:ArithmeticUtils、Base64Util、BitConverterUtil、BuildTreeFor1077、CaculateDistanceUtil、CloseUtil、ConvertUtil、...

Global site tag (gtag.js) - Google Analytics