解析properties文件通用 java工具類

n24d 9年前發布 | 5K 次閱讀 Java

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import java.util.Set;

public class PropertiesUtil {

/**

  • 方法: getProperties <br>
  • 描述: 更具key獲取value <br>
  • 作者: 宋學軍 sxjworld@126.com<br>
  • 時間: 2013-12-6 下午3:13:52
  • @param key
  • @return */ public static String getProperties(String key) { Properties prop = new Properties(); InputStream url = PropertiesUtil.class.getResourceAsStream("/conf/deploy.properties"); FileInputStream in = null; try { prop.load(url); } catch (FileNotFoundException e1) { e1.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ if(in != null){ try { in.close(); in= null; } catch (IOException e) { e.printStackTrace(); } } }

return (String)prop.get(key);

}

public static String getProperties(String path,String key) { Properties prop = new Properties(); InputStream url = null; FileInputStream in = null; try { url = new FileInputStream(path); } catch (FileNotFoundException e2) { // TODO Auto-generated catch block e2.printStackTrace(); }

try { prop.load(url); } catch (FileNotFoundException e1) { e1.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ if(in != null){ try { in.close(); in= null; } catch (IOException e) { e.printStackTrace(); } } }

return (String)prop.get(key);

}

public static void addProperties(String key,String value){

InputStream url = PropertiesUtil.class.getResourceAsStream("/conf/deploy.properties"); Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

/*Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } toSaveMap.put(key,value);
prop.putAll(toSaveMap);

System.out.println(toSaveMap.toString());*/ prop.put(key, value);

    try  
    {  
        OutputStream outputStream = new FileOutputStream(new File(PropertiesUtil.class.getResource("/conf/deploy.properties").getFile()));  
        prop.store(outputStream, null);
        outputStream.flush();
        outputStream.close();  
        System.out.println("添加成功");
    }  
    catch (IOException e)  
    {  
        e.printStackTrace();  
    }  

} /**

  • 方法: addProperties <br>
  • 描述: 設置key,value <br>
  • 作者: 宋學軍 sxjworld@126.com<br>
  • 時間: 2013-12-6 下午3:15:03
  • @param key
  • @param value
  • @throws Exception */ public static void addProperties(String path,String key,String value){ InputStream url = null; try { url = new FileInputStream(path); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } toSaveMap.put(key,value);
prop.putAll(toSaveMap);

System.out.println(toSaveMap.toString());

    try  
    {  
        OutputStream outputStream = new FileOutputStream(new File(path));  
        prop.store(outputStream, null);
        outputStream.flush();
        outputStream.close();  
        System.out.println("添加成功");
    }  
    catch (IOException e)  
    {  
        e.printStackTrace();  
    }  

}

/**

  • 方法: updateProperties <br>
  • 描述: 修改 <br>
  • 作者: 宋學軍 sxjworld@126.com<br>
  • 時間: 2013-12-6 下午3:28:29
  • @param key
  • @param value */ public static void updateProperties(String key,String value) { InputStream url = PropertiesUtil.class.getResourceAsStream("/conf/deploy.properties"); Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

/*Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } toSaveMap.put(key,value);
prop.putAll(toSaveMap);

System.out.println(toSaveMap.toString());*/ prop.put(key, value);

    try  
    {  
        OutputStream outputStream = new FileOutputStream(new File(PropertiesUtil.class.getResource("/conf/deploy.properties").getFile()));  
        prop.store(outputStream, null);
        outputStream.flush();
        outputStream.close();  
        System.out.println("修改成功");
    }  
    catch (IOException e)  
    {  
        e.printStackTrace();  
    }  

}

public static void updateProperties(String path,String key,String value) { InputStream url = null; try { url = new FileInputStream(path); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

/*Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } toSaveMap.put(key,value);
prop.putAll(toSaveMap);

System.out.println(toSaveMap.toString());*/ prop.put(key, value);

    try  
    {  
        OutputStream outputStream = new FileOutputStream(new File(path));  
        prop.store(outputStream, null);
        outputStream.flush();
        outputStream.close();  
        System.out.println("修改成功");
    }   
    catch (IOException e)  
    {  
        e.printStackTrace();  
    }  

}

/**

  • 方法: delProperties <br>
  • 描述: 刪除 <br>
  • 作者: 宋學軍 sxjworld@126.com<br>
  • 時間: 2013-12-6 下午9:53:28
  • @param key */ public void delProperties(String key) {

//將文件中key,value先拿出來 InputStream url = PropertiesUtil.class.getResourceAsStream("/conf/deploy.properties"); Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

/*Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } prop.clear(); toSaveMap.remove(key);

prop.putAll(toSaveMap);*/ prop.remove(key);

//將所有鍵值對再寫入文件 try
{
FileOutputStream outputStream = new FileOutputStream(PropertiesUtil.class.getResource("/conf/deploy.properties").getFile());
prop.store(outputStream, null); outputStream.flush(); outputStream.close();
System.out.println("刪除成功"); }
catch (IOException e)
{
e.printStackTrace();
}
}

public void delProperties(String path,String key) {

//將文件中key,value先拿出來 InputStream url = null; try { url = new FileInputStream(path); } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } Properties prop = new Properties(); try { prop.load(url); } catch (IOException e) { e.printStackTrace(); }

/*Map toSaveMap = new HashMap(); Set keys = prop.keySet(); for (Iterator itr = keys.iterator(); itr.hasNext();) { String oldKey = (String) itr.next(); Object oldValue = prop.get(oldKey); toSaveMap.put(oldKey, oldValue); } prop.clear(); toSaveMap.remove(key);

prop.putAll(toSaveMap);

System.out.println(toSaveMap.toString());*/ prop.remove(key);

//將所有鍵值對再寫入文件 try
{
FileOutputStream outputStream = new FileOutputStream(path);
prop.store(outputStream, null); outputStream.flush(); outputStream.close();
System.out.println("刪除成功"); }
catch (IOException e)
{
e.printStackTrace();
}
}

} </pre>

 本文由用戶 n24d 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!