首页>代码>java读写服务器web项目中的配置文件>/ReadAndUpdateProp/src/util/UpdateScanInterval.java
package util;

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

public class UpdateScanInterval {

	/**
	 * 指定property文件
	 */
	//生成项目中的路径
	private String path;
	private File staticfile;
	
	public UpdateScanInterval() {
		path = this.getClass().getResource("/").getPath().substring(1, this.getClass().getResource("/").getPath().length()) + "util/scanInterval.properties";
		try {
			path = java.net.URLDecoder.decode(path,"utf-8");  //对路径解码,防止特殊符号产生的乱码
		} catch (UnsupportedEncodingException e1) {
			e1.printStackTrace();
		}
		staticfile = new File(path);
}

	/**
	 * 根据Key 读取Value
	 * 
	 * @param key
	 * @return
	 */
	public String readData(String key) {
		Properties props = new Properties();
		try {
			InputStream in = new BufferedInputStream(new FileInputStream(path));
			props.load(in);
			in.close();
			String value = props.getProperty(key);
			return value;
		} catch (Exception e) {
			e.printStackTrace();
			return null;
		}
	}

	/**
	 * 修改或添加键值对 如果key存在,修改 反之,添加。
	 * 
	 * @param key
	 * @param value
	 */
	public void writeData(String key, String value) {
		Properties prop = new Properties();
		try {
			File file = new File(staticfile.getAbsolutePath());
			if (!file.exists())
				file.createNewFile();
			InputStream fis = new FileInputStream(file);
			prop.load(fis);
			fis.close();// 一定要在修改值之前关闭fis
			OutputStream fos = new FileOutputStream(staticfile.getAbsolutePath());
			prop.setProperty(key, value);
			prop.store(fos, "\u8BBE\u7F6E\u626B\u63CF\u95F4\u9694\u65F6\u95F4");
			fos.close();
		} catch (IOException e) {
			System.err.println("Visit " + path + " for updating "
					+ value + " value error");
		}
	}

	public static void main(String[] args) {
		try {
			String p = "E:/Tomcat%206.0/webapps/";
			p = java.net.URLDecoder.decode(p,"utf-8");
			System.out.println("1>>>>"+p);
			p = java.net.URLDecoder.decode(p,"utf-8");
			System.out.println("2>>>>"+p);
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
//		// TODO Auto-generated method stub
//		UpdateScanInterval test = new UpdateScanInterval();
//		test.writeData("scanInterval", "1000*60*10");
//		String scanInterval = test.readData("scanInterval");
//		System.out.println("The name of the person is:" + scanInterval);
	}
}
最近下载更多
云和美和  LV1 2019年4月18日
szp157  LV2 2019年3月22日
212121210  LV1 2018年12月26日
大撒入  LV2 2018年10月30日
2506894463  LV7 2017年11月8日
如风_23  LV3 2017年9月22日
LHJ123  LV30 2017年8月16日
sevenvsky  LV27 2015年9月23日
Space  LV29 2014年1月3日
ifeng  LV16 2013年8月29日
最近浏览更多
微信网友_6698455742353408 2023年10月19日
暂无贡献等级
heqian  LV17 2023年1月10日
酒酒清欢  LV8 2022年12月1日
94310849  LV4 2022年6月6日
Zeorwyc  LV8 2022年4月21日
wei112233  LV15 2022年1月13日
Jerry9527  LV1 2022年1月7日
心往情深 2021年12月13日
暂无贡献等级
px1314 2021年12月2日
暂无贡献等级
if没有else  LV2 2021年10月24日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友