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
相关文章读者评论发表评论 |
|