1. 程式人生 > >properties文件讀寫工具類PropertiesUtil.java

properties文件讀寫工具類PropertiesUtil.java

prop ace sys pan str pri finally res println

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Properties;


/**
 * 
 * @author  
 *
 */
public class PropertiesUtil {
    
    private String properiesName = "";

    public PropertiesUtil() {

    }
    
    
public PropertiesUtil(String fileName) { this.properiesName = fileName; } /** * 按key獲取值 * @param key * @return */ public String readProperty(String key) { String value = ""; InputStream is = null; try { is = PropertiesUtil.class
.getClassLoader().getResourceAsStream(properiesName); Properties p = new Properties(); p.load(is); value = p.getProperty(key); } catch (IOException e) { e.printStackTrace(); } finally { try { is.close(); }
catch (IOException e) { e.printStackTrace(); } } return value; } /** * 獲取整個配置信息 * @return */ public Properties getProperties() { Properties p = new Properties(); InputStream is = null; try { is = PropertiesUtil.class.getClassLoader().getResourceAsStream(properiesName); p.load(is); } catch (IOException e) { e.printStackTrace(); } finally { try { is.close(); } catch (IOException e) { e.printStackTrace(); } } return p; } /** * key-value寫入配置文件 * @param key * @param value */ public void writeProperty(String key, String value) { InputStream is = null; OutputStream os = null; Properties p = new Properties(); try { is = new FileInputStream(properiesName); // is = PropertiesUtil.class.getClassLoader().getResourceAsStream(properiesName); p.load(is); // os = new FileOutputStream(PropertiesUtil.class.getClassLoader().getResource(properiesName).getFile()); os = new FileOutputStream(properiesName); p.setProperty(key, value); p.store(os, key); os.flush(); os.close(); } catch (Exception e) { e.printStackTrace(); } finally { try { if (null != is) is.close(); if (null != os) os.close(); } catch (IOException e) { e.printStackTrace(); } } } public static void main(String[] args) { // sysConfig.properties(配置文件) PropertiesUtil p = new PropertiesUtil("sysConfig.properties"); System.out.println(p.getProperties().get("db.url")); System.out.println(p.readProperty("db.url")); PropertiesUtil q = new PropertiesUtil("resources/sysConfig.properties"); q.writeProperty("myUtils", "wang"); System.exit(0); } }

properties文件讀寫工具類PropertiesUtil.java