java读取properties文件代码

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
private final static String SYS_TEMP_FILE = System  
            .getProperty("java.io.tmpdir") + "\\9884698793643198z.properties";  
    private static Map<String, String> fileNames = null;  

    /** 
     * get a file path from a system temp file. 
     *  
     * @param keyOfFileName 
     * @return 
     */  
    public static final String getAFilePathFromSysTempFile(String keyOfFileName) {  
        if (null == fileNames) {  
            fileNames = new HashMap<String, String>();  
            loadFilePathsFromSysTempFile();  
        }  
        String path = fileNames.get(keyOfFileName);  
        return null == path ? "" : path;  
    }  

    private static final boolean loadFilePathsFromSysTempFile() {  
        try {  
            if (!new File(SYS_TEMP_FILE).exists()) {  
                new File(SYS_TEMP_FILE).createNewFile();  
                return true;  
            }  
            Properties props = new Properties();  
            InputStream in = new BufferedInputStream(new FileInputStream(  
                    SYS_TEMP_FILE));  
            props.load(in);  
            Enumeration<?> en = props.propertyNames();  
            while (en.hasMoreElements()) {  
                String key = (String) en.nextElement();  
                String prop = props.getProperty(key);  
                fileNames.put(key, prop);  

            }  
            return true;  
        } catch (Exception e) {  
            e.printStackTrace();  
            return false;  
        }  
    }  

    /** 
     * save a file path to a system temp file. 
     *  
     * @param parameterName 
     * @param parameterValue 
     * @return 
     */  
    public static final int saveAFilePathToSysTempFile(String parameterName,  
            String parameterValue) {  
        Properties prop = new Properties();  
        try {  
            InputStream fis = new FileInputStream(SYS_TEMP_FILE);  
            prop.load(fis);  

            OutputStream fos = new FileOutputStream(SYS_TEMP_FILE);  
            prop.setProperty(parameterName, parameterValue);  
            prop.store(fos, "Update '" + parameterName + "' value");  

            fileNames.put(parameterName, parameterValue);  
            return fileNames.size();  
        } catch (IOException e) {  
            e.printStackTrace();  
            return -1;  
        }  
    }  

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:C#常用正则表达式整理

下一篇:jQuery实现的进度条效果