刚刚研究的一个问题“Java同样的汉字在服务器和本地的电脑上URLencode 出来的结果不一致”也涉及了字符串的编码格式。
最简单的方法就是:Charset.defaultCharset();
Servlet中可以使用:request.getCharacterEncoding();
也可以使用上文提到的,不过也不那么简单:
如果在这里配置了和文件编码不同的编码方式,文件中的字符串输出可能就会产生乱码,如下面的代码输出为:
ISO-8859-1?????????? ?????18
我的文件完整路径是:D:\javaProject\javatrans\src\main\java\wasdev\sample\servlet\CharsetTest3.java
可以通过” -Dfile.encoding=utf-8“指定编码方式
但是CMD应该是使用的GBK编码,不支持韩文,我们把韩文复制粘贴到CMD窗口中发现这一点:
只见光标后移了,却看不见内容。
sun.cpu.endian=little CPU的字节序为小结尾,这涉及到”主机字节序和网络字节序“的问题,通常主机字节序为小结尾(Little endian:将低序字节存储在起始地址),网络字节序为大结尾(Big endian:将高序字节存储在起始地址)。但不同的处理器(CPU)、操作系统也有可能不同。
优化后的方法:
======================文档信息===========================
来源: http://www.92to.com/bangong/2017/09-08/28233023.html