/**
* 修改或添加properties文件的键值对 如果key存在就修改,反之则是添加。
*
* @param key
* @param value
* @throws FileNotFoundException
* @throws IOException
*/
public static void writeProperty(String key ,String value){
try{
String s;
StringBuilder sb = new StringBuilder();
//以下内容为配置文件的读取
//FileReader fr = new FileReader(basePath+propertyFileName);
InputStreamReader isr = new InputStreamReader(new FileInputStream(basePath+propertyFileName),"utf-8");//弃用FileReader而采用InputStreamReader是为了设置编码防止读写文件时产生乱码的问题
BufferedReader br = new BufferedReader(isr);
while((s=br.readLine())!=null){
if(s.contains("=")){
String k = s.split("=")[0];
if(k.equals(key)){
s= k+"="+value;
}
}
sb.append(s);
sb.append("\r");
}
br.close();
//以下内容为文件的写入
//FileWriter fw = new FileWriter(basePath+propertyFileName);
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream(basePath+propertyFileName, false),"UTF-8");//false表示不追加文件 true表示追加文件
BufferedWriter bw = new BufferedWriter(osw);
bw.write(sb.toString());
bw.flush();
bw.close();
}catch (FileNotFoundException e) {
log.error("配置文件找不到:"+e.getMessage());
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
log.error("读取配置文件或者写入文件出错:"+e.getMessage());
// TODO Auto-generated catch block
e.printStackTrace();
}
}