2018-06-12读取和修改配置文件属性

/**

*/
package com.maxtech.card.biz.util;

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

import jxl.common.Logger;

/**

  • @author zhoudengkai
  • @date 2018年3月26日

*/
public class PropertiesUtil {
private static Logger logger = Logger.getLogger(PropertiesUtil.class);

/**
 * 读取配置文件某属性
 * @author zhoudengkai
 * @date 2018年3月26日
 * @param filePath
 * @param key
 */
public static String readValue(String filePath,String key){
    Properties props = new Properties();
    try {
        if(!filePath.startsWith("/")){
            filePath = "/"+filePath;
        }
        InputStream in = PropertiesUtil.class.getResourceAsStream(filePath);
        props.load(in);
        String value = props.getProperty(key);
        return value;
        
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        logger.error(e);
        return null;
    }

}

public static void readProperties(){
    
}


/**
 * 写入配置文件
 * @author zhoudengkai
 * @date 2018年3月26日
 * @param fileName
 * @param parameterName
 * @param parameterValue
 * @throws Exception
 */
public static void writeProperties(String fileName, String parameterName, String parameterValue) throws Exception {
    // 本地测试特别注意,如果是maven项目,请到\target目录下查看文件,而不是源代码下
    // 注意路径不能加 / 了,加了则移除掉
    if (fileName.startsWith("/")){
        fileName.substring(1);
    }
    String filePath = PropertiesUtil.class.getResource("/").getPath()+fileName;
    // 获取配置文件
    Properties pps = new Properties();
    InputStream in = new BufferedInputStream(new FileInputStream(filePath));
    pps.load(in);
    in.close();
    OutputStream out = new FileOutputStream(filePath);
    // 设置配置名称和值
    pps.setProperty(parameterName, parameterValue);
    // comments 等于配置文件的注释
    pps.store(out, "Update " + parameterName + " name");
    out.flush();
    out.close();
}

/*public static void main(String[] args) {
    System.out.println(readValue("/config/url.properties", "pageUrl"));
    String value = PropertiesUtil.readValue("/config/url.properties", "pageUrl_index");
    Jedis js = new Jedis();
    js.set("", "");
    js.get("");
}*/

}

你可能感兴趣的:(2018-06-12读取和修改配置文件属性)