专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » php utf-8转unicode的函数 »正文

php utf-8转unicode的函数

来源: 发布时间:星期二, 2008年12月23日 浏览:6次 评论:0
/**
* utf-8 转换成 unicode
* @author fanhui
* 2007-3-15
* @param inStr
* @
*/
public String utf8ToUnicode(String inStr) {
char myBuffer = inStr.toCharArray;
StringBuffer sb = StringBuffer;
for ( i = 0; i < inStr.length; i) {
UnicodeBlock ub = UnicodeBlock.of(myBuffer[i]);
(ub UnicodeBlock.BASIC_LATIN){
//英文及数字等
sb.append(myBuffer[i]);
} (ub UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS){
//全角半角
j = () myBuffer[i] - 65248;
sb.append((char)j);
}{
//汉字
s = () myBuffer[i];
String hexS = Integer.toHexString(s);
String unicode = "\\u"+hexS;
sb.append(unicode.toLowerCase);
}
}
sb.toString;
}
/**
* unicode 转换成 utf-8
* @author fanhui
* 2007-3-15
* @param theString
* @
*/
public String unicodeToUtf8(String theString) {
char aChar;
len = theString.length;
StringBuffer outBuffer = StringBuffer(len);
for ( x = 0; x < len;) {
aChar = theString.charAt(x);
(aChar '\\') {
aChar = theString.charAt(x);
(aChar 'u') {
// Read the xxxx
value = 0;
for ( i = 0; i < 4; i) {
aChar = theString.charAt(x);
switch (aChar) {
'0':
'1':
'2':
'3':
'4':
'5':
'6':
'7':
'8':
'9':
value = (value << 4) + aChar - '0';
;
'a':
'b':
'c':
'd':
'e':
'f':
value = (value << 4) + 10 + aChar - 'a';
;
'A':
'B':
'C':
'D':
'E':
'F':
value = (value << 4) + 10 + aChar - 'A';
;
default:
throw IllegalArgumentException(
"Malformed \\uxxxx encoding.");
}
}
outBuffer.append((char) value);
} {
(aChar 't')
aChar = '\t';
(aChar 'r')
aChar = '\r';
(aChar 'n')
aChar = '\n';
(aChar 'f')
aChar = '\f';
outBuffer.append(aChar);
}
}
outBuffer.append(aChar);
}
outBuffer.toString;
}
标签:
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: