java 读取配置文件 与更新

Posted Mars、一切都会好起来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 读取配置文件 与更新相关的知识,希望对你有一定的参考价值。

笔记

public class Config {
    
     private static Properties props = new Properties();
     static File configFile = null;
        static {
            InputStreamReader reader = null;
            try {
                File dir = new File(System.getProperty("user.dir"));
                configFile = new File(dir, "config.properties.dev");
                if (!configFile.exists()) {
//                    String path = Thread.currentThread().getClass().getClassLoader().getResource("config.properties").getPath();
//                    configFile = new File(path);
                    configFile = new File(dir, "config.properties");
                }
                reader = new InputStreamReader(new FileInputStream(configFile), "UTF-8");
                props.load(reader);
            } catch (FileNotFoundException e) {
            } catch (Exception e) {
            } finally {
                if (reader != null) {
                    try {
                        reader.close();
                    } catch (IOException e) {
                    }
                }
            }
        }
        
        public static String getDsl(){
            System.out.println("dsl" + props.getProperty("dsl"));
            return props.getProperty("dsl");
        }
        
        public static String getDate(){
            System.out.println("date" + props.getProperty("date"));
            return props.getProperty("date");
        }
        
        public static void updateProperties(String keyname,String keyvalue) {   
            try {   
                props.load(new FileInputStream(configFile));   
                // 调用 Hashtable 的方法 put,使用 getProperty 方法提供并行性。   
                // 强制要求为属性的键和值使用字符串。返回值是 Hashtable 调用 put 的结果。   
                props.setProperty(keyname, keyvalue);   
                OutputStream fos = new FileOutputStream(configFile);              
                // 以适合使用 load 方法加载到 Properties 表中的格式,   
                // 将此 Properties 表中的属性列表(键和元素对)写入输出流   
                props.store(fos, "Update ‘" + keyname + "‘ value");   
            } catch (IOException e) {   
                System.err.println("属性文件更新错误");   
            }   
        }   
     
}

 

 

以上是关于java 读取配置文件 与更新的主要内容,如果未能解决你的问题,请参考以下文章

java 读取配置文件 与更新

java如何读取XML配置文件

从yaml文件读取配置,然后修改配置,怎样更新到yaml文件

Java配置文件读取和路径设置

Apollo配置中心-Api方式与Java方式测试

linux 下java读取配置文件