zoukankan      html  css  js  c++  java
  • java中文与unicode编码之间的转换

    package test;
    
    import java.io.UnsupportedEncodingException;
    
    public class TestUnicode{
    
        public static void main(String[] args) throws UnsupportedEncodingException {
            String s[] = {"☑","□"};
            for (int i = 0; i < s.length; i++) {
                System.out.println(s[i]+" --的unicode编码是:"+gbEncoding(s[i]));
                System.out.println(gbEncoding(s[i]) + " --转换成中文是:"+decodeUnicode(gbEncoding(s[i])));
            }
        }
    
        /*
         * 中文转unicode编码
         */
        public static String gbEncoding(final String gbString) {
            char[] utfBytes = gbString.toCharArray();
            String unicodeBytes = "";
            for (int i = 0; i < utfBytes.length; i++) {
                String hexB = Integer.toHexString(utfBytes[i]);
                if (hexB.length() <= 2) {
                    hexB = "00" + hexB;
                }
                unicodeBytes = unicodeBytes + "\u" + hexB;
            }
            return unicodeBytes;
        }
        /*
         * unicode编码转中文
         */
        public static String decodeUnicode(final String dataStr) {
            int start = 0;
            int end = 0;
            final StringBuffer buffer = new StringBuffer();
            while (start > -1) {
                end = dataStr.indexOf("\u", start + 2);
                String charStr = "";
                if (end == -1) {
                    charStr = dataStr.substring(start + 2, dataStr.length());
                } else {
                    charStr = dataStr.substring(start + 2, end);
                }
                char letter = (char) Integer.parseInt(charStr, 16); // 16进制parse整形字符串。
                buffer.append(new Character(letter).toString());
                start = end;
            }
            return buffer.toString();
        }
    }

    代码出处:https://www.cnblogs.com/boluoboluo/p/6504641.html,此处只做记录,方便查阅

  • 相关阅读:
    bless for you...
    Unity3D 热更新方案(集合各位专家的汇总)
    Unity与iOS原生代码之间的相互调用
    unity android相互调用
    unity3d资源打包总结
    Unity3D热更新LuaFramework入门实战
    unity插件开发
    Unity3D性能优化总结
    正确释放Vector的内存
    CCLuaObjcBridge
  • 原文地址:https://www.cnblogs.com/g177w/p/15181550.html
Copyright © 2011-2022 走看看