期待更好更稳定的开源FrameWork的出现,让我们一起努力吧!  
日历
<2006年9月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567
统计
  • 随笔 - 78
  • 文章 - 1
  • 评论 - 29
  • 引用 - 0

导航

常用链接

留言簿(1)

随笔分类

随笔档案(42)

文章档案(37)

相册

搜索

  •  

积分与排名

  • 积分 - 44787
  • 排名 - 1067

最新随笔

最新评论

阅读排行榜

评论排行榜

 

使用ResourceBundle

                                      

在程式中有很多字串訊息會被寫死在程式中,如果您想要改變某個字串訊息,您必須修改程式碼然後重新編譯,例如簡單的"Hello!World!"程式就是如此:

  • Hello.java
				   package onlyfun.caterpillar;

public class Hello {
public static void main(String[] args) {
System.out.println("Hello!World!");
}
}

如果日後想要改變"Hello!World!"為"Hello!Java!",您就要修改程式並重新編譯。

對於日後可能變動的文字訊息,您可以考慮將訊息移至程式之外,方法是使用Java的java.util.ResourceBundle來作訊息綁定,首先您要先準備一個.properties,例如:

  • messages.properties
				   onlyfun.caterpillar.welcome=Hello
onlyfun.caterpillar.name=World

.properties中撰寫的是key、value,之後在程式中您可以使用key來取得對應的value值,接著改寫Hello類別:
  • ResourceBundleDemo.java
				   package onlyfun.caterpillar;

import java.util.ResourceBundle;

public class ResourceBundleDemo {
public static void main(String[] args) {
ResourceBundle resource =
ResourceBundle.getBundle("messages");

System.out.print(resource.getString(
"onlyfun.caterpillar.welcome") + "!");
System.out.println(resource.getString(
"onlyfun.caterpillar.name") + "!");
}
}

ResourceBundle的getBundle()方法會取得一個ResourceBundle的實例,所給定的參數名稱是訊息檔案的主檔名,取得 ResourceBundle實例後,可以使用getString()指定key值來取得value值,執行結果如下:
Hello!World!

如果您日後想要改變顯示的訊息,只要改變.properties的內容就可以了,例如可以改為:
  • messages.properties
				   onlyfun.caterpillar.welcome=Oh
onlyfun.caterpillar.name=Java

則直接執行程式就會顯示新的訊息:
Oh!Java!


posted on 2006-09-27 15:07 BlueSky_itwangxinli 阅读(275) 评论(1)  编辑  收藏
评论:

只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © BlueSky_itwangxinli Powered by: 博客园 模板提供:沪江博客