package java實用級;
public class J209 {
public J209() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
String str = "JAVA程式";
//將字串str的Unicode碼以16進位表示,並轉成字串。
String str16=toHexString(str);
System.out.println(str16);
//將字串str轉成Big5碼
String strb = unicodeToBig5(str);
//將字串str的Big5碼以16進位表示,並轉成字串。
str16 = toHexString(strb);
System.out.println(str16);
//將Big5碼表示的字串strBig5再轉回Unicode碼,得到原字串。
String stru = big5ToUnicode(strb);
System.out.println(stru);
}
// 方法toHexString接受一個字串當參數,取出字串中每一個字元的16進位碼
// (4位數),再將這些16進位碼串成字串後傳回,每個碼之間用一空白分隔。
public static String toHexString(String str) {
// 請在此寫出本方法的程式碼
String strResult = "";
String tmp;
char c;
for(int i=0; i<str.length(); i++)
{
c=str.charAt(i);
tmp="0000"+Integer.toHexString(c);
strResult+=tmp.substring((tmp.length()-4))+" ";
}
return strResult;
}
// 方法unicodeToBig5接受一個以Unicode表示的字串,
// 將其轉成以Big5表示的字串後傳回。
public static String unicodeToBig5(String str) {
// 請在此寫出本方法的程式碼
String strResult = "";
try{
strResult=new String(str.getBytes("Big5"),"ISO8859_1");
}
catch(Exception e){}
return strResult;
}
// 方法big5ToUnicode接受一個以Big5表示的字串,
// 將其轉成以Unicode表示的字串後傳回。
public static String big5ToUnicode(String str) {
// 請在此寫出本方法的程式碼
String strResult = "";
try{
strResult=new String(str.getBytes("ISO8859_1"),"Big5");
}
catch(Exception e){}
return strResult;
}
}
沒有留言:
張貼留言