import java.io.UnsupportedEncodingException;

class CharsetTest{

	/**
	 * 字符串编码转换的实现方法
	 */
	public String changeCharset(String str, String newCharset)
		throws UnsupportedEncodingException {
		if (str != null) {
			//用默认字符编码解码字符串。
			byte[] bs = str.getBytes();
			//用新的字符编码生成字符串
			return new String(bs, newCharset);
		}
		return null;
	}

	public static void main(String[] args)
		throws UnsupportedEncodingException{

		String str = "This is a 中文的 String!";//实验字符串
		CharsetTest t=new CharsetTest();


		String[] encodes ={
			"GBK",//中文超大字符集
			"GB2312",
			"ASCII",//7位ASCII字符，也叫作ISO646-US、Unicode字符集的基本拉丁块
			"ISO-8859-1",//ISO 拉丁字母表 No.1，也叫作 ISO-LATIN-1
			"UTF-8",//8 位 UCS 转换格式
		};

		String s=null;
		for(String e : encodes){
			s=t.changeCharset(str,e);
			System.out.println("转换为"+e+"编码："+s);
		}		
	}
}
