字符串的外部文件,而不是硬编码
我有开发一些Android应用程序的经验,可以轻松地使用XML字符串文件存储字符串。 我最后一次开发桌面Java应用程序时,我对字符串进行了硬编码(例如按钮标题,标签等…)。 我已经知道这是不好的做法,我应该将字符串存储在一个文件中。
我不知道该怎么做。
- 我目前正在Eclipse中开发。 我应该在项目文件夹中粘贴一个文本文件吗?
- 这是标准吗?
- 你如何在代码中找到该文件?
是的,您应该使用.properties
文件并使用ResourceBundle
访问它们。
Eclipse有一个你可能觉得有用的内置重构。
Source->Externalise Strings
这将创建一个属性文件,其中的字符串存储为键/值对。
在幕后,它正在使用ResourceBundle
我想如果您这样做,它将不是特定于任何IDE:请参阅通过资源文件加载资源以获取概述。 第一个URL说明了此类查找属性文件的位置。
请参阅ResourceBundle
类。
ResourceBundle
将首先查找类,如果没有找到,它将查找属性文件。 我们不必指定文件名, ResourceBundle
将使用与类相同的机制来构造文件名。 该文件必须具有扩展名.properties
。
ResourceBundle
尝试从当前类路径加载属性文件。
如果属性存储在子目录中,请使用.
而不是/
。
看一下ResourceBundle
的Javadoc 。 API提供了一种获取特定于语言环境的资源的字符串的方法。