91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于java1.8中的語言國際化ResourceBundle的使用

發布時間:2020-06-19 11:29:34 來源:網絡 閱讀:544 作者:一杯開心茶 欄目:軟件技術

比如你要寫一個軟件,既要支持中文顯示和操作,也要支持英文顯示和操作。如何解決?
方法1,單獨寫兩套軟件;方法2,一套軟件,兩套配置,對其中所有要顯示的字段都做兩份描述,一份中文,一份英文,程序啟動的時候,根據操作語言選擇中文還是英文的描述。
java就提供了方法2這樣的api功能,ResourceBundle,簡化了開發過程,提高開發效率。
使用起來也很方便,創建多個配置文件,然后在程序中根據用戶選擇使用哪套配置即可。

  1. 弄清楚路徑問題

我們創建Message_zh_CN.properties文件和Message_en_CA.properties,這兩個文件放在項目的src路徑下,這兩個文件格式默認是ISO-8859-1。文件名只要符合 xxx_xxx_xxx.properties格式即可,前面的部分可以替換。

Message_en_CA.properties文件中的內容,其中{0}{1}{0}是參數綁定的用法,后面示例可以看到,這樣子就可以動態綁定需要的內容。

info= hello{0}{1}{0}

Message_zh_CN.properties

info= \u4f60\u597d\uff01{0}{1}{0}
  1. 代碼調用
package baseAPI;
import java.util.ResourceBundle;
import java.text.MessageFormat;
import java.util.Locale;
public class useResourceBundle {
    public static void main(String[] args) {
      //配置需要讀取的配置文件Message_en_CA.properties
        Locale zhLoc = new Locale("en","CA");       
        ResourceBundle rb = ResourceBundle.getBundle("Message",zhLoc);
        //通過getString方式獲取字段值
        System.out.println("內容:"+rb.getString("info"));
        String str1="內容:"+rb.getString("info");
        //此處使用了之前配置文件的{0}{1}
        System.out.println(MessageFormat.format(str1, " one","two"));
        //Message_zh_CN.properties
        Locale zhLoc1 = new Locale("zh","CN");
        rb = ResourceBundle.getBundle("Message",zhLoc1);
        System.out.println("內容:"+rb.getString("info"));
        str1="內容:"+rb.getString("info");
System.out.println(MessageFormat.format(str1, "一","二"));
    }
}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家港市| 偃师市| 博兴县| 永清县| 新晃| 庆城县| 余庆县| 广元市| 永德县| 重庆市| 子洲县| 池州市| 镇沅| 竹山县| 英超| 利川市| 普格县| 崇礼县| 长海县| 齐齐哈尔市| 新化县| 岚皋县| 永平县| 鹤庆县| 麻江县| 佛山市| 修水县| 镇赉县| 崇仁县| 宝山区| 沂水县| 克东县| 定州市| 高邑县| 红原县| 札达县| 遵义市| 三亚市| 阜阳市| 麟游县| 常宁市|