`

Java 枚举式转码

阅读更多

web项目中如果统一转码工作(tomcat,spring等)没有做好的话,难免会出现乱码。

网上的各种解决方案,也未必是“对症下药”

所以写了一个小工具来枚举的方式转码,看结果后用对得那个就可以了,简单粗暴!

代码分享出来,有用到的朋友可以省下不少时间

当然如果大家有更好的方法,欢迎讨论

import java.io.UnsupportedEncodingException;

public class CharTools {
	
	/** 枚举的方式将老字符进行转码
	 * @param oldStr
	 * cxy 2014-06-18
	 */
	public static void codeTest(String oldStr)
	{
		String[] oldCode={"GBK","UTF-8","GB2312","ISO-8859-1","BIG5"};
		String[] newCode={"GBK","UTF-8","GB2312","ISO-8859-1","BIG5"};
		System.out.println("=====================");
		System.out.println("原字符:"+oldStr);
		
		try {
			for(String one : oldCode)
			{
				for(String one1 : newCode)
				{
					System.out.println(one+" to "+one1+"------"+new String(oldStr.getBytes(one),one1));
				}
				//下面是针对前台encodeURIComponent的数据
				System.out.println("URLDecoder("+one+")"+ java.net.URLDecoder.decode(oldStr, one));
			}
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		System.out.println("=====================");
	}
	
	public static void main(String[] args) {
		CharTools.codeTest("中文");
	}

}

 有2个数组,列举了常用的编码,有需要可以自己添加。

3
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics