`
357029540
  • 浏览: 725528 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

对\\uxx转换为unicode编码的\uxx

    博客分类:
  • JAVA
阅读更多

       在业务过程中难免会遇到字符串转换为16进制的unicode编码的形式,转换为unicode编码后我们需要加上\u来表示unicode,因为“\”在java里面需要进行转义为"\\",所以拼接处理的unicode编码格式就是"\\uxx",因而我们需要对"\\uxx"转换为"\uxx"的unicode编码形式,实现的代码如下所示(参考的地方忘记连接了):

public class StringToUnicode {

    public static void main(String [] args){
        String kk= "\\\\u12\\\\u6";
        String result= "";
        StringBuffer buf = new StringBuffer();
        Matcher m = Pattern.compile("\\\\u([0-9A-Fa-f]{0,4})").matcher(kk);
        while (m.find()) {
            try {
                //Integer cp = Integer.parseInt(m.group(1), 16);
                m.appendReplacement(buf, ",");
                buf.append("u");
                for(int i = 0;i < 4 - m.group(1).length();i++){
                    buf.append(0);
                }
                buf.append(m.group(1));
            } catch (NumberFormatException e) {
            }
        }
        m.appendTail(buf);
        result = buf.toString();
        System.out.println(result);
    }

}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics