您的位置:首页 > 编程语言 > Java开发

JAVA工具类(9)--属性文件properties的读取

2017-09-09 21:19 435 查看
package com;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.*;

/**
* properties文件读写工具
* Created by charlin on 2017/9/9.
*/
public class PropertiesUtil {

private static String fileName = "conf/messages.properties";
private static String configFilePath = null;
static {
try {
configFilePath = PropertiesUtil.class.getClassLoader().getResource(fileName).getPath();
configFilePath = java.net.URLDecoder.decode(configFilePath, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}

/**
* 获得文件路径
* @param fileName
* @return
*/
public static String getFilePath(String fileName){
try {
configFilePath = PropertiesUtil.class.getClassLoader().getResource(fileName).getPath();
configFilePath = java.net.URLDecoder.decode(configFilePath, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return configFilePath;
}

/**
* 根据key获得值
* @param key
* @return
*/
public static String getValue(String key, String fileName){
String value = null;
try {
Properties properties = new Properties();
FileInputStream fis = new FileInputStream(getFilePath(fileName));
properties.load(fis);
if (fis != null) fis.close();
if(properties.containsKey(key)){
value = properties.getProperty(key).trim();
}
} catch (IOException e) {
e.printStackTrace();
}
return  value;
}

/**
* 获得默认值
* @param key
* @return
*/
public static String getValue(String key){
return getValue(key, getFilePath(fileName));
}

/**
* 获得所有的key
* @param fileName
* @return
*/
public static List getKeyList(String fileName){
List list = new ArrayList();
try {
Properties properties = new Properties();
FileInputStream fis = new FileInputStream(getFilePath(fileName));
properties.load(fis);
if (fis != null) fis.close();
Set set = properties.keySet();
for(Iterator it = set.iterator(); it.hasNext();){
list.add(it.next());
}
} catch (IOException e) {
e.printStackTrace();
}
return  list;
}

public static void main(String[] args) {
List list = getKeyList(fileName);
System.out.println("list:"+list);
}
}


———————————————————————

(java 架构师全套教程,共760G, 让你从零到架构师,每月轻松拿3万)

有需求者请进站查看,非诚勿扰

https://item.taobao.com/item.htm?spm=686.1000925.0.0.4a155084hc8wek&id=555888526201


01.高级架构师四十二个阶段高

02.Java高级系统培训架构课程148课时

03.Java高级互联网架构师课程

04.Java互联网架构Netty、Nio、Mina等-视频教程

05.Java高级架构设计2016整理-视频教程

06.架构师基础、高级片

07.Java架构师必修linux运维系列课程

08.Java高级系统培训架构课程116课时

(送:hadoop系列教程,java设计模式与数据结构, Spring Cloud微服务, SpringBoot入门)

——————————————————————–
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息