使⽤Unicode中⽂编码及中⽂标点符号Unicode编码看百度也很少所以⾃⼰整理下来。
项⽬需要,将⼀段字符串⾥⾯含有中⽂,英⽂,中英⽂标点符号。其中 中⽂,中标点符号使⽤Unicode编码。类似这种
String code="下⾬了!;。wxn;,.";
只需要两个⽅法,
// 根据UnicodeBlock⽅法判断中⽂标点符号
public static boolean isChinesePunctuation(char c) {
Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
if (ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
|| ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
unicode汉字|| ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS
|| ub == Character.UnicodeBlock.CJK_COMPATIBILITY_FORMS
|| ub == Character.UnicodeBlock.VERTICAL_FORMS) {
return true;
} else {
return false;
}
}
/**
* 字符串转换unicode
*/
public static String string2Unicode(String codeResult) {
Pattern p = Patternpile("[0-9]*");
Matcher m = p.matcher(codeResult);
StringBuffer unicode = new StringBuffer();
for (int i = 0; i < codeResult.length(); i++) {
// 取出每⼀个字符
char c = codeResult.charAt(i);
p = Patternpile("[\u4e00-\u9fa5]");
m = p.matcher(String.valueOf(c));
//判断是否为中⽂
if (m.matches()) {
// 将汉字转换为unicode
unicode.append("\\u" + HexString(c));
/
/判断是否为中⽂标点符号
} else if (isChinesePunctuation(c)) {
// 将中⽂标点符号转换为unicode
unicode.append("\\u" + HexString(c));
} else {
unicode.append(c);
}
}
String();
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论