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

标签: encodeutil 格式 编码 | 发表时间:2014-01-28 13:55 | 作者:
出处:http://www.iteye.com

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

集成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 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [encodeutil 格式 编码] 推荐:

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

- - ITeye博客
集成Commons-Codec,Commons-Lang及JDK提供的编解码方法. * * 集成Commons-Codec,Commons-Lang及JDK提供的编解码方法. * Base64编码, URL安全(将Base64中的URL非法字符�?,/=转为其他字符, 见RFC3548). * URL 编码, Encode默认为UTF-8.

Chrome 27将采用Opus编码格式

- - cnBeta.COM
据外电报道,Google会在Chrome 27浏览器中采用Opus编码格式,它能促进音频压缩技术发展. Opus编码器 是一个有损声音编码的格式,由互联网工程任务组(IETF)进来开发,适用于网络上的实时声音传输,标准格式为RFC 6716. Opus 格式是一个开放格式,使用上没有任何专利或限制.

Apple新闻之苹果宣布旗下 Apple Lossless 无损压缩音频格式的编码器开源

- D31T4 - 苹果fans-中文 Apple Blog
    “Apple Lossless(Apple Lossless Audio Codec、ALAC)为苹果的无损音频压缩编码格式,可将非压缩音频格式(WAV、AIFF)压缩至原先容量的40%至60%左右,编解码速度很快. 也因为是无损压缩,听起来与原文件完全一样,不会因解压缩和压缩而改变.     目前支持 Apple Lossless 的主要是苹果自家的 iTunes、iPod、iOS 设备,上周苹果宣布将旗下的 Apple Lossless Audio Codec(ALAC)无损音频编解码器以 Apache License 为协议公布源代码,这样无疑会吸引第三方设备和软件对它的支持.

决定视频文件占用空间大小的因素(编码格式,比特率)

- - 操作系统 - ITeye博客
编码率/比特率直接与文件体积有关. 且编码率与编码格式配合是否合适,直接关系到视频文件是否清晰. 在 视频编码领域,比特率常翻译为编码率,单位是Kbps,例如800Kbps 其中,    1K=1024    1M=1024K        b 为 比特(bit)     这个就是电脑文件大小的计量单位,1KB=8Kb,区分大小写,B代表字节(Byte) s 为 秒(second)p 为 每(per),    以800kbps来编码表示经过编码后的数据每秒钟需要用800K比特来表示.

编码

- - 人月神话的BLOG
前面谈需求,架构和设计都比较多,今天谈一下编码方面的内容,做一个好的程序员不容易,很多时候不是体现在需求和架构能力的缺少上面,更多的是体现在最基础的编码和实现能力的不足上面. 编码是一个技术活,需要大量的脑力活动,但是很多人确可以把编码做为一个体力活,我在这里想继续强调的是如果编码是一个完全的重复体力劳动的话,那么所有工作就一定是可以自动化掉的,在这个时候你原来所有的工作没有任何的价值体现而被完全替代.

字符编码

- - 博客 - 伯乐在线
伯乐在线注:本文来自文章作者 @acmerfight 的投稿( 原文链接). 如果其他朋友也想投稿,请发邮件至 [email protected],或直接给 @伯乐在线官方微博 私信投递. 你是否认为“ASCII码 = 一个字符就是8比特”. 你是否认为一个字节就是一个字符,一个字符就是8比特.

将URL编码?

- - JavaScript - Web前端 - ITeye博客
    URL一般只能由字母、数字、$ - _. * ' ( ) 等一些字符构成. 那么当URL中需要用到汉字时怎么办,譬如有这样的URL: "www.test.com/search?name=张三",此时,只有通过将URL进行编码的方式进行传递了.     Javascript编/解码方法:.     如果对上面的URL(www.test.com/search?name=张三)进行编码的话.

编码风格不是编码规范

- - 外刊IT评论
我并不认为程序员是一个情绪特别丰富的群体. 但有一些事情却能很容易刺激程序员的神经,那就是代码格式和布局. 如果看到一个函数的括弧在同一行上没有闭合,我的眼睛会喷血. 如果看到有人没有 恰好的在两个函数间留一空行,我的小腿会抽筋. 但重点在这里——除非是在家里开发自己的业余爱好软件,我的这些个人喜好其实是无关紧要的.

理清URL编码

- winners - Thinking for Fun
关于URL编码,RFC1738做了如下的规定:. “Only alphanumerics [0-9a-zA-Z], the special characters “$-_.+!*’(),” [not including the quotes - ed], and reserved characters used for their reserved purposes may be used unencoded within a URL.”.