java读取*.properties的配置文件

java.Util.Properties类


HashTable的子类,实现Map集合
该集合没有泛型,键值都是字符串
它是个可以持久化的属性集,可以和IO对象结合使用


方法:
void load(InputSream in)
void load(Reader reader) 流对象读取文件中的键值对,保存到集合


void store(OutputStream out,String comments)
void store(Writer writer,String comments) 将集合的键值对写回文件中保存


getProperty(String key)通过键值获取值


读取配置文件的一个小demo:

import java.io.FileInputStream;
import java.io.IOException;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Properties;
import java.util.Set;

public class PropertiesDemo {
public static void main(String[] args) {
Properties pt = new Properties();
String path = PropertiesDemo.class.getClassLoader().getResource("demo.properties").getPath();
path = path.replace("bin", "src");
System.out.println(path);
try {
pt.load(new FileInputStream(path));
String username = pt.getProperty("userName");
System.out.println(username);

//下面是两个遍历map集合的方法,如果你根据键的名字得到键值,用上面这个就行了。

Set<Object> set = pt.keySet();//读取到的配置文件放到properties集合中,遍历它
Iterator<Object> it = set.iterator();
while(it.hasNext()){
String key = (String) it.next();
String value = pt.getProperty(key);
System.out.println(key+":"+value);
}

Set<Entry<Object, Object>> set1 = pt.entrySet();
Iterator<Entry<Object, Object>> it1 = set1.iterator();
while(it.hasNext()){
Entry<Object, Object> entry = it1.next();
System.out.println(entry.getKey()+":"+entry.getValue());
}
} catch (IOException e) {
System.out.println("获取信息有错误"+e.getMessage());
}

}




}

猜你喜欢

转载自blog.csdn.net/yy23yy80/article/details/80697593