在JSP文件中,源代码是
|1€3|<%="\u0031\u0080\u0033" %>|
页面上的结果是:
| 1€3 | 13 |
为什么欧元符号表示不同?
答案 0 :(得分:2)
0x80-0x9F范围内的HTML数字字符引用实际上对应于字符U + 0080-U + 009F。相反,它们引用从windows-1252编码映射到字节0x80-0x9F的字符。
这是浏览器执行Unicode之前的一个奇怪的历史人工制品。 HTML5排序标准化,因为虽然它的无效解析器required以这种方式解析它。这在XML / XHTML中不会发生。
因此\u0080
会为您提供实际的字符U + 0080,您无法看到它,因为它是一个不可见的控制字符,但€
为您提供代码页1252字节0x80 ,这是U + 20AC欧元符号。