Home  >  Article  >  Java  >  Detailed explanation of Java reading and writing Properties configuration files

Detailed explanation of Java reading and writing Properties configuration files

高洛峰
高洛峰Original
2017-01-12 10:29:091623browse

Java reads and writes Properties configuration file

1.Properties class and Properties configuration file

The Properties class inherits from the Hashtable class and implements the Map interface, which also uses a key-value pair form to save the attribute set. However, Properties is special in that its keys and values ​​are both string types.

2. The main method in Properties

(1)load(InputStream inStream)

This method can load properties from the file input stream corresponding to the .properties property file. List to Properties class object. For example, the following code:

Properties pro = new Properties();
FileInputStream in = new FileInputStream("a.properties");
pro.load(in);
in.close();

(2)store(OutputStream out, String comments)

This method stores the property list of the Properties class object Save to the output stream. For example, the following code:

FileOutputStream oFile = new FileOutputStream(file, "a.properties");
pro.store(oFile, "Comment");
oFile.close();

If comments is not empty, the first line of the saved properties file will be #comments, indicating comment information; if it is empty There is no annotation information.

Following the comment information is the current saving time information of the property file.

(3)getProperty/setProperty

These two methods are to obtain and set property information respectively.

3. Code example

The properties file a.properties is as follows:

name=root
pass=liu
key=value

Read the a.properties property list and generate the property file b.properties. The code is as follows:

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.Iterator;
import java.util.Properties;
 
public class PropertyTest {
  public static void main(String[] args) {
    Properties prop = new Properties();  
    try{
      //读取属性文件a.properties
      InputStream in = new BufferedInputStream (new FileInputStream("a.properties"));
      prop.load(in);   ///加载属性列表
      Iterator<String> it=prop.stringPropertyNames().iterator();
      while(it.hasNext()){
        String key=it.next();
        System.out.println(key+":"+prop.getProperty(key));
      }
      in.close();
       
      ///保存属性到b.properties文件
      FileOutputStream oFile = new FileOutputStream("b.properties", true);//true表示追加打开
      prop.setProperty("phone", "10086");
      prop.store(oFile, "The New properties file");
      oFile.close();
    }
    catch(Exception e){
      System.out.println(e);
    }
  }
}

Thank you for reading, I hope it can help everyone, thank you for your support of this site!

For more detailed explanations of Java reading and writing Properties configuration files, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn