Board logo

標題: TQC209 [打印本頁]

作者: ray    時間: 2012-3-3 19:50     標題: TQC209

import java.io.*;
public class TQC209 {
   
  public static void main(String[] args) {
     String str = "JAVA程式";

      //將字串str的Unicode碼以16進位表示,並轉成字串。
    String str16 = toHexString(str);
     System.out.println("Unicode 碼 16 進位 \t" + str16);
     
      //將字串str轉成Big5碼
   String strb = unicodeToBig5(str);
   
      //將字串str的Big5碼以16進位表示,並轉成字串。
   str16 = toHexString(strb);
     System.out.println("Big5 碼 16 進位 \t"+ str16);
      //將Big5碼表示的字串strBig5再轉回Unicode碼,得到原字串。
   String stru = big5ToUnicode(strb);
   System.out.println("原字串 \t\t\t"+ stru);
  }
  
   // 方法toHexString接受一個字串當參數,取出字串中每一個字元的16進位碼
   // (4位數),再將這些16進位碼串成字串後傳回,每個碼之間用一空白分隔。
  public static String toHexString(String str) {
     // 請在此寫出本方法的程式碼
     String strResult = "";
   String s2="";
   char c;
      for(int i=0; i<str.length(); i++){
         c = str.charAt(i);
         //s2 = "0000" + Integer.toHexString(c);
         s2 = Integer.toHexString(c);
         //strResult += s2.substring((s2.length()-4)) + " ";
         strResult += s2 + " ";
      }
      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;      
   }
}




歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/) Powered by Discuz! 7.2