/**
  *您的答复如果能使大家满意的话,那么这100分最终MUST BE就是你的!
  *谢谢
  *///问题是这样的,现有一"text.txt"文件,第一行有一字符串:\u7321
String a = "\u7231";File files = new File("text.txt");
FileReader fr = new FileReader(files);
BufferedReader readfile = new BufferedReader(fr);//读取文本,并把其中的字符串附给b引用
String b = readfile.readLine();System.out.println(a);
System.out.println(b);//疑虑①:屏幕输出如下,这是为什么?

\u7321//疑虑②:如果现在想将文本中的 \u7321  输出‘爱’字的最好方案是什么。

解决方案 »

  1.   

    //疑虑①:屏幕输出如下,这是为什么?

    \u7321
    这是因为,你把String a定义成"\u7231"的时候,这个时候\u是转义字符,它表示它后面跟的东东不是一般的东东,而是一个UNICODE字符,所以就把“爱”打出来了,如果想真正的显示\u7231的话,也很简单,把赋值语句改成String a="\\u7231", 这个时候打印出来的就是\u7231了。
    //疑虑②:如果现在想将文本中的 \u7321  输出‘爱’字的最好方案是什么。
    那就不知道了
      

  2.   

    要把 "\\u7231" 打印成为“爱”,理论上说,无非是解析字符串,得到字符的内码。因为不清楚你在文本文件中使用的格式,所以不太好跟你说程序应该怎么写,就事论事的话,大致可以写成下面的样子:   String b = "\\u7231";
       char c = (char)Integer.parseInt(b.substring(2), 16);