工具之-----Properties文件配置解析

package com.HTT.properties;

import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import java.util.Set;

public class Property {
	private static final Map<String, String> map = new HashMap<>();
	
	public Property() {
	}
	
//      根据路径去解析可以通过两种不同的参数
	public static void loadProperties(String path) {
		InputStream is = Class.class.getResourceAsStream(path);
		
		loadProperties(is);
	}
	
	public static void loadProperties(InputStream is) {
		try {
			Properties properties = new Properties();
			properties.load(is);
			
                      //得到keyset
			Set<Object> keySet = properties.keySet();
                      //使用迭代器
			Iterator<Object> iterator = keySet.iterator();
			while (iterator.hasNext()) {
				String key = (String) iterator.next();
				String value = (String) properties.get(key);

                                //将键和值放入map中
				map.put(key, value);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
	public static String getValue(String key) {
		return map.get(key);
	}
}

测试:

package com.HTT.properties;

public class Test {

	public static void main(String[] args) {
		Property.loadProperties("/config.properties");
		System.out.println(Property.getValue("name"));
	}

}

配置文件为:

 结果为:

猜你喜欢

转载自blog.csdn.net/baidu_41922630/article/details/102662689