websphere的jvm默认编码方式
String encoding = System.getProperty("file.encoding");
System.out.println(encoding);
这样可以查看你系统支持的编码
System.out.println(encoding);
这样可以查看你系统支持的编码
AIX乱码解决
aix是5.3的,英文操作
系统,was是
IBM
WebSphere
Application
Server, 6.0.2.33的,
在server1的 jvm参数中加入
-Duser.language=zh -Duser.region=CN -Dfile.encoding=UTF8 -Dclient.override.encoding=UTF8
在server1的 jvm参数中加入
-Duser.language=zh -Duser.region=CN -Dfile.encoding=UTF8 -Dclient.override.encoding=UTF8
或许有用
字符集问题~~首先确定aix默认的字符集是什么,由于通过String对象getBytes()方法获得的字符数组获得的是系统默认字符集的byte数组,如果默认的不是gbk(windows默认的字符集),那么传到windows系统的时候就会产生乱码现象,下面是把srcCharset字符集的String对象转换为gbk字符集数组的一个方法:
private final String CONTENT_CHARSET = "GBK";
private byte[] StringToByteGBK(String content, String srcCharset) {
byte[] reval = null;
if (content == null || content.length() == 0) {
return null;
}
try {
String cn = null;
reval = content.getBytes(srcCharset); // 得到 字节流
cn = new String(reval, srcCharset);
cn = new String(cn.getBytes(CONTENT_CHARSET),
CONTENT_CHARSET); // 转换为gbk
if (cn == null) {
return reval;
}
reval = cn.getBytes(SMS_CONTENT_CHARSET); // 重新得到一次gbk字节流
} catch (Exception e) {
System.out.println(e.getMessage());
}
return reval;
}
private final String CONTENT_CHARSET = "GBK";
private byte[] StringToByteGBK(String content, String srcCharset) {
byte[] reval = null;
if (content == null || content.length() == 0) {
return null;
}
try {
String cn = null;
reval = content.getBytes(srcCharset); // 得到 字节流
cn = new String(reval, srcCharset);
cn = new String(cn.getBytes(CONTENT_CHARSET),
CONTENT_CHARSET); // 转换为gbk
if (cn == null) {
return reval;
}
reval = cn.getBytes(SMS_CONTENT_CHARSET); // 重新得到一次gbk字节流
} catch (Exception e) {
System.out.println(e.getMessage());
}
return reval;
}