Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Java
Expertise: Intermediate
Mar 8, 2002



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Reading Properties from a File

It's not too much trouble to read a few arguments from the command line. It really becomes a problem if you have to read 50 or more arguments. One solution is to prepare a property file and mention all the properties in it. Then you can read the name of the property file from the command line and read the values of all other properties when you need to throughout the application. The syntax of the property file should be in the following format.

Keys can be defined in a separate Java class, say PropertyDefiner, and can be implemented as a singleton.
public static final String CONFIGURATION_FILE = key_in_property_file;

Make use of the java.util.Properties class that represents a persistent set of properties. The Properties can be saved to a stream or loaded from a stream.
            //instantiate a new Property class
            Properties props = new Properties();

// set the name of the property file
if (args[i].equalsIgnoreCase("-f"))
props.setProperty(PropertyDefiner.CONFIGURATION_FILE, args[++i]);

Just for the sake of robustness, check if this file is not null while retrieving the file name. Once you have the file name, open a FileInputStream and load the properties. And don't forget to close the input stream once the job is done.

	FileInputStream in = new FileInputStream(fileName);

Now you can retrieve the value of any property as you wish.
String propertyName = props.getProperty(PropertyDefiner.PROPERTY_NAME);

Using this approach, you can add new properties while you are developing the application. You also can fine-tune the performance of your application by merely changing a few values in the property file.
Raj Kaushik
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date