继续学习Java Web的编解码章节,记录Java中如何把ISO-8859、GB-2312、GBK、UTF-16、UTF-8编码进行编码。
额,System.out.printf(“%x ” , (int)b[i]) 这句代码没有懂,希望大家评论帮忙解决。
public static void toHex(char[] b) {
for (int i = 0; i < b.length; i++) {
System.out.printf("%x " , (int)b[i]);
}
System.out.println();
}
public static void toHex(byte[] b) {
for (int i = 0; i < b.length; i++) {
System.out.printf("%x " , b[i]);
}
System.out.println();
}
public static void encode(){
String name = "I am 啃哥";
toHex(name.toCharArray());
try{
byte[] iso8895 = name.getBytes("ISO-8859-1");
toHex(iso8895);
byte[] gb2312 = name.getBytes("GB2312");
toHex(gb2312);
byte[] GBK = name.getBytes("GBK");
toHex(GBK);
byte[] utf16 = name.getBytes("UTF-16");
toHex(utf16);
byte[] utf8 = name.getBytes("UTF-8");
toHex(utf8);
}catch(Exception e){
e.printStackTrace();
}
}
参考网站:http://www.ibm.com/developerworks/cn/java/j-lo-chinesecoding/