首页 > 编程语言 >java Unicode 转为中文

java Unicode 转为中文

时间:2023-03-20 20:05:44浏览次数:49  
标签:case 中文 outBuffer java value else theString Unicode aChar

public static String decodeUnicode(String theString) {
char aChar;
int len = theString.length();
StringBuffer outBuffer = new StringBuffer(len);
for (int x = 0; x < len;) {
aChar = theString.charAt(x++);
if (aChar == '\\') {
aChar = theString.charAt(x++);
if (aChar == 'u') {
// Read the xxxx
int value = 0;
for (int i = 0; i < 4; i++) {
aChar = theString.charAt(x++);
switch (aChar) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
value = (value << 4) + aChar - '0';
break;
case 'a':
case 'b':
case 'c':
case 'd':
case 'e':
case 'f':
value = (value << 4) + 10 + aChar - 'a';
break;
case 'A':
case 'B':
case 'C':
case 'D':
case 'E':
case 'F':
value = (value << 4) + 10 + aChar - 'A';
break;
default:
throw new IllegalArgumentException("Malformed \\uxxxx encoding.");
}
}
outBuffer.append((char) value);
} else {
if (aChar == 't')
aChar = '\t';
else if (aChar == 'r')
aChar = '\r';
else if (aChar == 'n')
aChar = '\n';
else if (aChar == 'f')
aChar = '\f';
outBuffer.append(aChar);
}
} else
outBuffer.append(aChar);
}
return outBuffer.toString();
}

标签:case,中文,outBuffer,java,value,else,theString,Unicode,aChar
From: https://blog.51cto.com/u_3871599/6138538

相关文章

  • JavaScript获取图片的原始尺寸
    页面里的img元素,想要获取它的原始尺寸,以宽度为例可能首先想到的就是width,如下<imgsrc="http://img11.360buyimg.com/da/g14/M07/01/0E/rBEhVlNhh8wIAAAAAADmFBLo1twAAM2......
  • Java 给ArrayList中的元素去重且顺序不变
    importjava.util.ArrayList;importjava.util.LinkedHashSet;publicclassMainClass{publicstaticvoidmain(String[]args){//ConstructingAnArray......
  • 利用 Java POI 操作PPT示例
    [size=large][color=red]使用POI操作PPT文档[/color][/size][url]http://zyplaiai.iteye.com/blog/778547[/url]1)如果是创建新的PPT文档,直接使用S......
  • 使用Java调用百度搜索
    自己没搜索引擎,又想要大规模的数据源,怎么办?可以对百度搜索善加利用,以小搏大,站在巨人的肩膀上。有很多的应用场景可以很巧妙地借助百度搜索来实现,比如网站的新闻采集,比如技术......
  • 三种javascript数组搜索的效率对比
    [b][color=red][size=x-large]结论:内置方法是最快的.[/size][/color][/b]//构造一个数组vararr=[];for(vari=0;i<=1000000;i++){arr.push('abcdefghigk'+i);}varv=......
  • JavaMelody监控web服务器
    JavaMelody监控web服务器JavaMelody监控java项目摘要JavaMelody的是一款监控Java或JavaEE应用服务器在质量保证和生产环境。它不是一个工具来模拟......
  • JAVA -- try catch
    try{}catch(exception){}finally, nxtstatement  ||throw给用户操作,或提示执行顺序:try遇到exception时就停止了有匹配的exception就运行catch ......
  • Java常见面视题型:选择题、简答题、问答题、编码题
    Java常见面视题型:选择题、简答题、问答题、编码题简答题、问答题:1.JDK、JRE、JVM的区别:1JDK:JAVA开发工具包,是java语言的核心,包含JRE+开发运行等命令工具2)JRE:JAVA运......
  • java常用的工具类之Collectors.toMap
    java.util.stream.Collectors一.Collectors.toMap1.构造ListList<Student>list=newArrayList<>();for(inti=1;i<4;i++){list.add(newStudent(i+"","......
  • 我可以帮你理解Java方法的传递方式
    你好,这是Bing。我可以帮你理解Java方法的传递方式。......