java讀取本地constant.properties檔案內容
constant.properties中的內容是 鍵值對
例如:PING_IP=192.168.93.42
另外需要一個類,如下:
package me.gacl.websocket;
import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * 本地引數檔案資訊獲取 * @author riverjin * */ public class PropertiesManager {
private static final String PRO_FILE_NAME = "constant.properties"; public static final int PING_IP = 6; public static final String PING_IP_KEY = "PING_IP"; public static String PING_IP_VALUE = null; private static Properties pro = null;
private static void getPro(){ InputStream in = null; try { pro = new Properties(); in = PropertiesManager.class.getResourceAsStream(PRO_FILE_NAME); pro.load(in); } catch (Exception e) { System.out.println("PropertiesManager.getPro() is error"); e.printStackTrace(); }finally{ if(in != null){ try { in.close(); } catch (IOException e) { System.out.println("PropertiesManager.getPro() is error"); } } } } public static final String getProValueByKey(int key){ String value = ""; String keyString = ""; try { if(pro == null) getPro(); switch (key) { case PING_IP: if(PING_IP_VALUE != "" && PING_IP_VALUE != null){ value = PING_IP_VALUE; }else{ keyString = PING_IP_KEY; } break; default: break; } if(value == "" || value == null) { value = pro.getProperty(keyString); } switch (key) { case PING_IP: PING_IP_VALUE = value ; break; default: break; } } catch (Exception e) { System.err.println("ropertiesManager.getPro() is error"); e.printStackTrace(); } return value; } }
呼叫如下:
String ip = PropertiesManager.getProValueByKey(PropertiesManager.PING_IP);