码迷,mamicode.com
首页 > 编程语言 > 详细

java属性文件properties常用操作工具类

时间:2015-01-30 10:48:08      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:java   properties   inputstream   fileinputstream   

对于java.util.Properties类,通常我们只需要做到以下3个学习目标:
1、认识properties文件,理解其含义,会正确创建properties文件。
2、会使用java.util.Properties类来操作properties文件。
3、掌握相对路径,能正确书写一个properties文件的相对路径。
而在平时的工作中,会遇到各种各样的需求,以下是一个封装。
package com.herman.util;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 * properties 文件操作工具类
 * @author Herman.Xiong
 * @date 2015-1-29 下午04:27:19
 * @version V3.0
 * @since jdk 1.6,tomcat 6.0
 */
public class PropertiesUtil {
	private static Properties prop = new Properties(); 
	private static InputStream in;
	private static final String path="src/com/herman/config/conf.properties";
	
	/**
	 * 加载
	 */
	static{
		init();
	}
	
	/**
	 * 初始化
	 */
	private static void init(){
		try {
			in=new FileInputStream(new File(path));
			prop.load(in);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 关闭InputStream
	 * @author Herman.Xiong
	 * @date 2015-1-30 上午09:41:04
	 */
	private static void close(){
		try {
			if(null != in)
				in.close(); 
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 重新加载Properties
	 * @author Herman.Xiong
	 * @date 2015-1-30 上午09:41:04
	 */
	public static void reload(){
		close();
		prop.clear();//清除所有装载的 键 - 值对
		init();
	}
	
	/**
	 * 删除所有键值
	 * @author Herman.Xiong
	 * @date 2015-1-30 上午09:42:04
	 */
	public static void removeAll(){
		close();
		File file=new File(path);
		if(file.exists())
			file.delete();
		try {
			if(!file.exists())
				new File(path).createNewFile();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 输出所有内容到控制台
	 * @author Herman.Xiong
	 * @date 2015-1-30 上午09:42:33
	 */
	public static void outList(){
		prop.list(System.out);
	}
	
	public static void main(String[] args) {
		System.out.println(prop.getProperty("abc"));
		outList();
		reload();
		outList();
		removeAll();
		System.out.println("重新加载.....");
		outList();
	}
}

欢迎大家关注我的博客!如有疑问,请加QQ群:135430763共同学习!

java属性文件properties常用操作工具类

标签:java   properties   inputstream   fileinputstream   

原文地址:http://blog.csdn.net/xmtblog/article/details/43303165

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!