1. 程式人生 > >在web中如何更改properties檔案的內容,絕對經典!

在web中如何更改properties檔案的內容,絕對經典!

public class PropUtil { 

/** * 根據KEY,讀取檔案對應的值 *

@param filePath 檔案路徑,即檔案所在包的路徑,例如:java/util/config.properties * 

@param key 鍵 * 

@return key對應的值 */ 

public static String getProp(String filename, String key) { 

try { 

Properties props = new Properties(); 

String filepath = PropUtil.class.getClassLoader().getResource("/").getPath() + filename; 

File file = new File(filepath); 

InputStream in = new FileInputStream(file); 

props.load(in);

 in.close(); 

String value = props.getProperty(key); 

return value; 

} catch (Exception e)

 { e.printStackTrace(); return null; } }

 /** * 修改或新增鍵值對 如果key存在,修改, 反之,新增。 

* @param filePath 檔案路徑,即檔案所在包的路徑,例如:java/util/config.properties 

* @param key 鍵 * @param value 鍵對應的值 

*/ 

public static void setProp(String filename, String key, String value) { 

try { 

Properties prop = new Properties();

String filepath = PropUtil.class.getClassLoader().getResource("/").getPath() + filename; 

File file = new File(filepath);

InputStream in = new FileInputStream(file);

prop.load(in); //一定要在修改值之前關閉fis 

in.close(); 

System.out.println("filepath---------->" + filepath);

 OutputStream fos = new FileOutputStream(file); prop.setProperty(key, value); //儲存,並加入註釋 

prop.store(fos, "Update '" + key + "' value"); 

fos.flush(); 

fos.close(); 

catch (Exception e) {

 e.printStackTrace(); 

} } }