[英]Defining accent characters in different platforms under java
我在不同平台上的重音符号存在问题。
当我在fedora下(默认字符集为UTF-8)在我的机器上登录时,它正正确地打印为SacréCoeur 。
但是,当我更新到在RedHat (默认字符集为ISO-8859-1)上运行的另一台服务器时,它将打印为SacréCoeur。
我想像在我的Fedora机器中一样在RedHat服务器中记录它。 我怎样才能做到这一点?
我的锻炼:
我也尝试过这个 ,但是没有用。
System.setProperty("file.encoding","ISO-8859-1"); Field charset =Charset.class.getDeclaredField("defaultCharset"); charset.setAccessible(true); charset.set(null,null);
为了从所有环境中获得类似的输出,而没有依赖于服务器操作系统的默认字符编码,在启动程序或服务器环境(Jboss tomcat或jetty)时,将-Dfile.encoding传递给启动脚本
(在jboss中说run.sh,将-Dfile.encoding = UTF-8添加到JAVA_OPTS)
-Dfile.encoding = UTF-8
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.