Read properties java example

Properties File — Shell Read & Write

This tutorial explains step by step to read and write an properties file in java with example You learned read a properties file with key and values as well as line by line and also write key and values to properties file.

  • How to read properties file using configparser in python
  • Parse Properties file using JProperties library in phyton
  • Write to Properties file in Python

How to read properties in Python with example?

In this example, you will learn how to Read key and its values from an properties file and display to console

Let’s declare properties file

Create a properties object, Properties is an data strucure to store key and values in java

Читайте также:  Git python add all

Create URL object using ClassLoader . getSystemResource method

Create a InputStream using url.openStream method

Load the properties content into java properties object using load method

Add try and catch block for IOExceptions and FIleNotFoundException

Oneway, Print the value using getProperty with key of an properties object

Another way is to iterate properties object for loop

First, get all keys using stringPropertyNames

using for loop print the key and values.

 catch (FileNotFoundException fie) < fie.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >System.out.println(properties.getProperty("hostname")); Set keys = properties.stringPropertyNames(); for (String key : keys) < System.out.println(key + " - " + properties.getProperty(key)); >> > 

How to read properties file line by line in java

  • created a File object with absolute path
  • Create BufferedReader using FileReader object
  • get First line of properties file using readLine of BufferedReader
  • Loop using while loop until end of line reached
  • Print each line
 > catch (FileNotFoundException e1) < e1.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >finally < try < br.close(); >catch (IOException e) < e.printStackTrace(); >> > > 

How to write a key and values to an properties file in java

In this example, You can read and write an properties using

  • First create an File object
  • Create a writer object using FileWriter
  • Create properties object and add new properties or update existing properties if properties file exists
  • setProperties method do update or add key and values
  • store method of properties object writes to properties file, You have to add the comment which append to properties file as a comment

Here is an complete example read and write an properties file

 catch (FileNotFoundException e) < e.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >> > 

Conclusion

You learned read a properties file with key and values as well as line by line and also write key and values to properties file

Источник

Java Read and Write Properties File Example

In this Java tutorial, learn to read properties file using Properties.load() method. Also we will use Properties.setProperty() method to write a new property into the .properties file.

Given below is a property file that we will use in our example.

firstName=Lokesh lastName=Gupta blog=howtodoinjava technology=java

2. Reading Properties File

In most applications, the properties file is loaded during the application startup and is cached for future references. Whenever we need to get a property value by its key, we will refer to the properties cache and get the value from it.

The properties cache is usually a singleton static instance so that application does not require to read the property file multiple times; because the IO cost of reading the file again is very high for any time-critical application.

Example 1: Reading a .properties file in Java

In the given example, we are reading the properties from a file app.properties which is in the classpath. The class PropertiesCache acts as a cache for loaded properties.

The file loads the properties lazily, but only once.

import java.io.IOException; import java.io.InputStream; import java.util.Properties; import java.util.Set; public class PropertiesCache < private final Properties configProp = new Properties(); private PropertiesCache() < //Private constructor to restrict new instances InputStream in = this.getClass().getClassLoader().getResourceAsStream("application.properties"); System.out.println("Reading all properties from the file"); try < configProp.load(in); >catch (IOException e) < e.printStackTrace(); >> //Bill Pugh Solution for singleton pattern private static class LazyHolder < private static final PropertiesCache INSTANCE = new PropertiesCache(); >public static PropertiesCache getInstance() < return LazyHolder.INSTANCE; >public String getProperty(String key) < return configProp.getProperty(key); >public Set getAllPropertyNames() < return configProp.stringPropertyNames(); >public boolean containsKey(String key) < return configProp.containsKey(key); >>

In the above code, we have used Bill Pugh technique for creating a singleton instance.

public static void main(String[] args) < //Get individual properties System.out.println(PropertiesCache.getInstance().getProperty("firstName")); System.out.println(PropertiesCache.getInstance().getProperty("lastName")); //All property names System.out.println(PropertiesCache.getInstance().getAllPropertyNames()); >
Read all properties from file Lokesh Gupta [lastName, technology, firstName, blog]

3. Writing into the Property File

Personally, I do not find any good reason for modifying a property file from the application code. Only time, it may make sense if you are preparing data for exporting to third party vendor/ or application that needs data in this format only.

Example 2: Java program to write a new key-value pair in properties file

So, if you are facing similar situation then create two more methods in PropertiesCache.java like this:

public void setProperty(String key, String value) < configProp.setProperty(key, value); >public void flush() throws FileNotFoundException, IOException < try (final OutputStream outputstream = new FileOutputStream("application.properties");) < configProp.store(outputstream,"File Updated"); outputstream.close(); >>
  • Use the setProperty(k, v) method to write new property to the properties file.
  • Use the flush() method to write the updated properties back into the application.properties file.
PropertiesCache cache = PropertiesCache.getInstance(); if(cache.containsKey("country") == false) < cache.setProperty("country", "INDIA"); >//Verify property System.out.println(cache.getProperty("country")); //Write to the file PropertiesCache.getInstance().flush();
Reading all properties from the file INDIA

And the updated properties file is:

#File Updated #Fri Aug 14 16:14:33 IST 2020 firstName=Lokesh lastName=Gupta technology=java blog=howtodoinjava country=INDIA

That’s all for this simple and easy tutorial related to reading and writing property files using java.

Источник

Properties File — Java Read & Write

This tutorial explains step by step to read and write a properties file in java with example You learned to read properties file with key and values as well as line by line and also write key and values to the properties file.

In this tutorial, How to read and write a properties file content in Java

Java properties file reader example

In this example, you will learn how to read a key and its values from a properties file and display it to console

Let’s declare the properties file

Create a properties object, Properties is a data structure to store keys and values in java

Create URL object using ClassLoader . getSystemResource method

Create a InputStream using url.openStream method

Load the properties content into the java properties object using the load method

Add try and catch block for IOExceptions and FIleNotFoundException

Oneway, Print the value using getProperty with the key of a properties object

Another way is to iterate properties object for the loop

First, get all keys using stringPropertyNames

using for loop print the key and values.

 catch (FileNotFoundException fie) < fie.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >System.out.println(properties.getProperty("hostname")); Set keys = properties.stringPropertyNames(); for (String key : keys) < System.out.println(key + " - " + properties.getProperty(key)); >> > 

How to read a properties file line by line in java

  • created a File object with an absolute path
  • Create BufferedReader using FileReader object
  • get the First line of the properties file using readLine of BufferedReader
  • Loop using while loop until the end of the line reached
  • Print each line
 > catch (FileNotFoundException e1) < e1.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >finally < try < br.close(); >catch (IOException e) < e.printStackTrace(); >> > > 

How to write a key and values to a properties file in java

In this example, You can read and write a property using

  • First create a File object
  • Create a writer object using FileWriter
  • Create properties object and add new properties or update existing properties if the properties file exists
  • setProperties method do update or add key and values
  • store method of properties object writes to the properties file, You have to add the comment which appends to the properties file as a comment

Here is a complete example read and write a properties file

 catch (FileNotFoundException e) < e.printStackTrace(); >catch (IOException e) < e.printStackTrace(); >> > 

Conclusion

You learned to read a properties file with keys and values as well as line by line and also write keys and values to the properties file

Источник

Tech Tutorials

Tutorials and posts about Java, Spring, Hadoop and many more. Java code examples and interview questions. Spring code examples.

Wednesday, April 14, 2021

How to Read Properties File in Java

In this tutorial you will see how to read a properties file in Java. If you have any configurable data in your application like DB configuration, user settings its better to keep it in a properties file and read it from there. A properties file stores data in the form of key/value pair.

  1. Loading properties file from the file system. See example.
  2. Loading properties file from classpath. See example.

Project structure

For this example we’ll have a properties file named app.properties file in a folder called resource. The resource folder is at the same level at the src folder in the Java project.

Steps for reading a properties file in Java

  1. Create an instance of Properties class.
  2. Create a FileInputStream by opening a connection to the properties file.
  3. Read property list (key and element pairs) from the input stream using load() method of the Properties class.

Content of the properties file

Here the properties file used is named app.properties file with it’s content as-

user=TestUser url=https://www.netjstech.com

Loading properties file from the file system

One way to read properties file in Java is to load it from the file system.

import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PropDemo < private Properties properties = new Properties(); public static void main(String[] args) < PropDemo pDemo = new PropDemo(); pDemo.loadPropertiesFile(); pDemo.readProperties(); >// This method is used to load the properties file private void loadPropertiesFile() < InputStream iStream = null; try < // Loading properties file from the path (relative path given here) iStream = new FileInputStream("resource/app.properties"); properties.load(iStream); >catch (IOException e) < // TODO Auto-generated catch block e.printStackTrace(); >finally < try < if(iStream != null)< iStream.close(); >> catch (IOException e) < // TODO Auto-generated catch block e.printStackTrace(); >> > /** * Method to read the properties from a * loaded property file */ private void readProperties() < System.out.println("User name - " + properties.getProperty("user")); System.out.println("URL - " + properties.getProperty("url")); // reading property which is not there System.out.println("City - " + properties.getProperty("city")); >>
User name - TestUser URL - https://www.netjstech.com City - null

Here you can see that in the code there is an attempt to read the property “city” which doesn’t exist in the app.properties file that’s why it is retrieved as null.

Loading properties file from classpath

If you have properties file in the project classpath then you can load it by using the getResourceAsStream method. That is another way to read properties file in Java.

import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class PropDemo < private Properties properties = new Properties(); public static void main(String[] args) < PropDemo pDemo = new PropDemo(); pDemo.loadProperties(); pDemo.readProperties(); >// This method is used to load the properties file private void loadProperties() < InputStream iStream = null; try < // Loading properties file from the classpath iStream = this.getClass().getClassLoader() .getResourceAsStream("app.properties"); if(iStream == null)< throw new IOException("File not found"); >properties.load(iStream); > catch (IOException e) < e.printStackTrace(); >finally < try < if(iStream != null)< iStream.close(); >> catch (IOException e) < // TODO Auto-generated catch block e.printStackTrace(); >> > /** * Method to read the properties from a * loaded property file */ private void readProperties() < System.out.println("User name - " + properties.getProperty("user")); System.out.println("URL - " + properties.getProperty("url")); >>
User name - TestUser URL - https://www.netjstech.com

That’s all for this topic How to Read Properties File in Java. If you have any doubt or any suggestions to make please drop a comment. Thanks!

Источник

Оцените статью