前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java属性文件properties常用操作工具类

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

作者头像
业余草
发布2019-01-21 14:59:16
7300
发布2019-01-21 14:59:16
举报
文章被收录于专栏:业余草

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

代码语言:javascript
复制
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();
	}
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015年01月30日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档