package configuration;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;
public class Configuration {
private Properties properties;
private FileInputStream inputFile;
private FileOutputStream outputFile;
public Configuration(){
properties = new Properties();
}
public Configuration(String filePath){
properties = new Properties();
try{
// inputFile = (FileInputStream) Configuration.class.getClassLoader().get(filePath);
inputFile = new FileInputStream(filePath);
properties.load(inputFile);
inputFile.close();
}catch(FileNotFoundException ex){
System.out.println("读取属性文件错误");
ex.printStackTrace();
}catch(IOException ex){
System.out.println("载入文件错误");
ex.printStackTrace();
}
}
public String getValue(String key){
if(properties.containsKey(key)){
String value = properties.getProperty(key);
return value;
}
else
return "";
}
public String getValue(String fileName,String key){
String value = "";
try{
inputFile = new FileInputStream(fileName);
properties.load(inputFile);
inputFile.close();
if(properties.containsKey(key)){
value = properties.getProperty(key);
return value;
}else{
return value;
}
}catch(FileNotFoundException ex){
System.out.println("读取属性文件错误");
ex.printStackTrace();
}catch(IOException ex){
System.out.println("载入文件错误");
ex.printStackTrace();
}
return value;
}
public void clear(){
properties.clear();
}
public void setValue(String key,String value){
properties.setProperty(key, value);
}
public void saveFile(String fileName,String description){
try{
outputFile = new FileOutputStream(fileName);
properties.store(outputFile, description);
outputFile.close();
}catch(FileNotFoundException ex){
System.out.println("读取属性文件错误");
ex.printStackTrace();
}catch(IOException ex){
System.out.println("载入文件错误");
ex.printStackTrace();
}
}
public static void main(String[] args){
Configuration rc = new Configuration("test.properties");
String ip = rc.getValue("ip");
String host = rc.getValue("dbPort");
String tab = rc.getValue("dbTable");
System.out.println("ip = " + ip + "ip-test leng = " + "ip-test".length());//以下输出properties读出的值
System.out.println("ip's length = " + ip.length());
System.out.println("host = " + host);
System.out.println("tab = " + tab);
}
}