您的位置:首页 > 其它

j​a​v​a​_​u​n​i​c​o​d​e​和​中​文​相​互​转​换​的​工​具​方​法

2014-07-09 15:51 543 查看
package com.sql8.net.util;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/**专门用于中文转Unicode

* @author yangxiaoyong

* @version 创建时间:2014年7月9日 下午3:46:00

* 参考:www.sql8.net

*/

public class ToUnicode {

public static void main(String[] args) {

String s = "把中文字符";

s = stringToUnicode(s);

System.out.println(s);

}

/**

* description:把中文字符串转换为十六进制Unicode编码字符串(assic码字符不转换)

*

* @param s

* @return

*/

public static String stringToUnicode(String s) {

String str = "";

for (int i = 0; i < s.length(); i++) {

int ch = (int) s.charAt(i);

if (ch > 255) {

str += "\\u" + Integer.toHexString(ch);

} else {

// str += "\\" + Integer.toHexString(ch);

str += s.substring(i, i + 1);

}

}

return str;

}

/**

* description:把十六进制Unicode编码字符串转换为中文字符串(assic码字符不转换)

*

* @param str

* @return

*/

public static String unicodeToString(String str) {

Pattern pattern = Pattern.compile("(\\\\u(\\p{XDigit}{4}))");

Matcher matcher = pattern.matcher(str);

char ch;

while (matcher.find()) {

ch = (char) Integer.parseInt(matcher.group(2), 16);

str = str.replace(matcher.group(1), ch + "");

}

return str;

}

}

本文引自:SQL吧|企业网站源码下载(www.sql8.net) 原文参考:http://www.sql8.net/a/course/chengxu/java/2014/0709/27550.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: