Java讀寫修改Property文件

  1. package com.test.common;   
  2.   
  3. import java.io.BufferedInputStream;   
  4. import java.io.File;   
  5. import java.io.FileInputStream;   
  6. import java.io.FileOutputStream;   
  7. import java.io.IOException;   
  8. import java.io.InputStream;   
  9. import java.io.OutputStream;   
  10. import java.util.Date;   
  11. import java.util.Properties;   
  12.   
  13. /**  
  14.  * @2011
  15.  * @2011
  16.  */  
  17. public class Data {   
  18.   
  19.     /**  
  20.      * 指定property文件  
  21.      */  
  22.     private static final String PROPERTY_FILE = "c:/data.properties";   
  23.   
  24.     /**  
  25.      * 根據Key 讀取Value  
  26.      *   
  27.      * @param key  
  28.      * @return  
  29.      */  
  30.     public static String readData(String key) {   
  31.         Properties props = new Properties();   
  32.         try {   
  33.             InputStream in = new BufferedInputStream(new FileInputStream(   
  34.                     PROPERTY_FILE));   
  35.             props.load(in);   
  36.             in.close();   
  37.             String value = props.getProperty(key);   
  38.             return value;   
  39.         } catch (Exception e) {   
  40.             e.printStackTrace();   
  41.             return null;   
  42.         }   
  43.     }   
  44.   
  45.        
  46.     /**  
  47.      * 修改或添加鍵值對 如果key存在,修改 反之,添加。  
  48.      *   
  49.      * @param key  
  50.      * @param value  
  51.      */  
  52.     public static void writeData(String key, String value) {   
  53.         Properties prop = new Properties();   
  54.         try {   
  55.             File file = new File(PROPERTY_FILE);   
  56.             if (!file.exists())   
  57.                 file.createNewFile();   
  58.             InputStream fis = new FileInputStream(file);   
  59.             prop.load(fis);   
  60.             fis.close();//一定要在修改值之前關閉fis   
  61.             OutputStream fos = new FileOutputStream(PROPERTY_FILE);   
  62.             prop.setProperty(key, value);   
  63.             prop.store(fos, "Update '" + key + "' value");   
  64.             fos.close();   
  65.         } catch (IOException e) {   
  66.             System.err.println("Visit " + PROPERTY_FILE + " for updating "  
  67.                     + value + " value error");   
  68.         }   
  69.     }}  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章