public class Test {
public static final String ISO_8859_1 = “ISO-8859-1”;
public static final String UTF_8 = “UTF-8”;
public static final String GBK = “GBK”;
public static final String GB2312 = “GB2312”;
public static void main(String[] args) {
String str = new String("中国");
System.out.println(str + "《UTF-8转ISO-8859-1》" + changeCharset(str, UTF_8, ISO_8859_1));
System.out.println(str + "《UTF-8转GBK》" + changeCharset(str, UTF_8, GBK));
System.out.println(str + "《UTF-8转GB2312》" + changeCharset(str, UTF_8, GB2312));
System.out.println(str + "《GBK转ISO-8859-1》" + changeCharset(str, GBK, ISO_8859_1));
System.out.println(str + "《GBK转UTF_8》" + changeCharset(str, GBK, UTF_8));
System.out.println(str + "《GBK转GB2312》" + changeCharset(str, GBK, GB2312));
System.out.println(str + "《GB2312转ISO-8859-1》" + changeCharset(str, GB2312, ISO_8859_1));
System.out.println(str + "《GB2312转UTF_8》" + changeCharset(str, GB2312, UTF_8));
System.out.println(str + "《GB2312转GBK》" + changeCharset(str, GB2312, GBK));
}
public static String changeCharset(String str, String oldCharset, String newCharset) {
try {
return new String(str.getBytes(oldCharset), newCharset);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
结果:
中国《UTF-8转ISO-8859-1》??????
中国《UTF-8转GBK》涓浗
中国《UTF-8转GB2312》涓??
中国《GBK转ISO-8859-1》???ú
中国《GBK转UTF_8》?й?
中国《GBK转GB2312》中国
中国《GB2312转ISO-8859-1》???ú
中国《GB2312转UTF_8》?й?
中国《GB2312转GBK》中国