ThirteenthDay--Java基礎(十一)國際化

國際化:讓世界上每個人都能看懂。
 Locale類(java.util包下):包括所有國家、地區、語言
  存在很多的靜態屬性,來表示國家、語言
  三種構造方法:
   Locale(String language)
    根據語言代碼構造一個語言環境。
   Locale(String language, String country)
    根據語言和國家構造一個語言環境。
   Locale(String language, String country, String variant)
    根據語言、國家和變量構造一個語言環境。
  常用方法:
   Locale getDefault()
             獲得此 Java 虛擬機實例的當前默認語言環境值。
    String getDisplayCountry()
             返回適合向用戶顯示的語言環境國家名。
            void setDefault(Locale newLocale)
             爲此 Java 虛擬機實例設置默認語言環境。
   String getLanguage()
             返回此語言環境的語言代碼。
   String getCountry()
             返回此語言環境的國家/地區代碼。
           注意:
            國家會兼容語言,但語言不會兼容國家。
         
 java.text.*:該包下存在許多格式化類
           NumberFormat抽象類:
            常用方法:
             NumberFormat getInstance()
              返回當前默認語言環境的通用數字格式。
    NumberFormat getInstance(Locale inLocale)
              返回指定語言環境的通用數字格式。
             String format(double number)
              根據國家,進行格式規範。
             NumberFormat getCurrencyInstance(Locale inLocale)
              返回指定語言環境的貨幣格式。 
              
           SimpleDateFormat類:
            模式字母:
    y  年 
    M  年中的月份 
    H  一天中的小時數(0-23)
    h  am/pm 中的小時數(1-12)
    m  小時中的分鐘數
    s  分鐘中的秒數 
   構造器:
    SimpleDateFormat(String pattern)
              用給定的模式和默認語言環境的日期格式符號構造 SimpleDateFormat。
   常用方法:
    String format(Date date)
              將一個 Date 格式化爲日期/時間字符串。
            注意:
             看到相應的模式字母,就會進行轉換。
        
 實現國際化:
  1、先寫各個語言對應的文字類,使其extends ListResourceBundle,然後重寫getContents(),返回一個二維數組。
  2、在程序中按照Local和ListResourceBundle的baseName來選擇對應的資源,調用getString()/getObject()取得value
   ResourceBundle類:
    ResourceBundle getBundle(String baseName, Locale locale)
     baseName爲對應的ListResourceBundle的類名(包名.類名)
     使用指定的基本名稱和語言環境,以及調用方的類加載器獲取資源包。
  注意:根據key去查找value時,當前沒有會去查找默認的,默認的也沒有則會拋出異常
  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章