是否有任何其他比資源包屬性文件更好的機制來本地化應用程序?替代資源包屬性文件
2
A
回答
3
實際上,ResourceBundle不一定從屬性文件中讀取其數據。 ResourceBundle具有某種邏輯來解決在哪裏查找數據,並且尋找與該包相同名稱的屬性文件是該邏輯的一個方面。從屬性文件中讀取實際上是由ResourceBundle的子類PropertyResourceBundle完成的。
您可以實現自己的ResourceBundle,它將以您想要的方式讀取(或計算)翻譯。 ResourceBundle Javadoc爲您提供了這些實現的示例。例如,您可以編寫一個可在數據庫中查找翻譯的ResourceBundle。
2
以下是直接來自ResourceBundle javadoc的報價。
Java平臺提供的ResourceBundle兩個 子類, ListResourceBundle的和 的PropertyResourceBundle,提供一個 相當簡單的方法來創建資源。 正如您在之前的 示例中簡要介紹的那樣,ListResourceBundle將其資源作爲關鍵字/值 對的列表管理 。 PropertyResourceBundle使用 屬性文件來管理其 資源。
如果ListResourceBundle的或 PropertyResourceBundle無法滿足 您的需求,您可以編寫自己的 ResourceBundle子類。您的 子類必須重寫兩個方法: handleGetObject和getKeys()。
在我看來,最好的做法是使用某種ResourceBundle子類,最好不要求你破解代碼來做本地化。原因:它存在,它的工作原理,人們瞭解它,不要重新發明輪子等。
相關問題
- 1. 廚師包資源的「源」屬性
- 2. ActiveSync文件資源管理器替代
- 3. 從資源中排除屬性文件
- 4. 資源文件未顯示其屬性
- 5. FindsBy屬性與資源文件c#Selenium
- 6. 從JSF中的屬性文件訪問資源包osgi bundle webapp
- 7. h:從資源包(屬性文件)帶有換行符的outputText
- 8. 向java資源包屬性文件添加HTML超鏈接
- 9. 如何覆蓋資源包屬性
- 10. 寫入作爲資源包含在Jar文件中的Java屬性文件
- 11. 替代屬性
- 12. 訪問* .js文件中的資源屬性文件
- 13. 使用資源包從屬性文件中讀取日文字符
- 14. 包裝代碼+屬性文件
- 15. 資源屬性和「需要」
- 16. createDirectoryAtPath:屬性:替代
- 17. 下載並替換資源文件
- 18. 下載並替換Android資源文件
- 19. 用於替換文件的資源
- 20. 資源文件但不包含文化代碼
- 21. 我應該如何構造jsps使用的資源包屬性文件?
- 22. 文件流是否包含源文件的屬性?
- 23. 動態Maven項目屬性在資源中未被替換
- 24. 使用資源值作爲佈局屬性(config.xml文件)
- 25. Pbreadcrumb DefaultMenuItem與來自屬性文件的值(資源束)
- 26. struts的消息資源屬性文件中的參數
- 27. 找不到屬性文件 - 如何找到它作爲資源?
- 28. 覆蓋屬性文件從依賴關係與資源
- 29. 的Struts 1:在哪裏放置屬性文件信息資源
- 30. Maven:讀取屬性文件和複製資源
你在找什麼功能不在屬性資源包中? – McDowell 2009-11-25 10:02:03
對不起,我應該清楚。我在同一時間使用資源包時沒有任何問題,如果不是資源包,我不應該錯過一些最佳實踐。 – 2009-11-25 12:45:21