Java 枚举式转码
程序员文章站
2022-04-04 19:42:55
...
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个数组,列举了常用的编码,有需要可以自己添加。
上一篇: Java变量类型识别的3种方式
下一篇: 单例模式容易忽略的几点