zoukankan      html  css  js  c++  java
  • Properties集合_修改配置信息

    集合中的数据来自于一个文件
       注意:必须要保证该文件中的数据是键值对。
          需要使用到读取流

    使用load()方法读取已有文件中的数据,存储到Properties集合中

     1 public class PropertiesDemo {
     2     public static void main(String[] args) throws IOException {
     3         PropertiesDemo();
     4     }
     5     public static void PropertiesDemo() throws IOException {
     6         Properties prop = new Properties();
     7         
     8         FileInputStream fr = new FileInputStream("F:\info.java");
     9         
    10         prop.load(fr);
    11         
    12         prop.list(System.out);
    13         
    14     }
    15 }

    对已有的配置文件中的信息进行修改

       1.读取这个文件
       2.并将这个文件的键值数据存储到集合中
       3.再通过集合对数据进行修改
       4.再通过流将修改后的数据存储到文件中

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.Properties;
    
    public class PropertiesDemo {
        public static void main(String[] args) throws IOException {
            test();
        }
        public static void test() throws IOException{
            
            //读取这个文件,文件可能不存在,所以先将文件封装成对象进行判断的文件是否存在,如果不存在可以抛异常或者创建一个,具体看需求
            File file = new File("F:\info.java");
            if(!file.exists()){
                file.createNewFile();
            }
            FileInputStream fr = new FileInputStream(file);
            
            //创建集合存储配置信息
            Properties prop = new Properties();
            
            //将流中的信息存储到集合中
            prop.load(fr);
            
            //修改配置信息
            prop.setProperty("04", "huangjianfengqingads");
            
            //保存
            FileWriter fw = new FileWriter(file);
            prop.store(fw, "");
            
            prop.list(System.out);
            fw.close();
            fr.close();
            
        }
    }

    模拟Load()方法:

     1 import java.io.BufferedReader;
     2 import java.io.FileReader;
     3 import java.io.IOException;
     4 import java.util.Properties;
     5 
     6 public class PropertiesDemo {
     7     public static void main(String[] args) throws IOException {
     8         myLoad();
     9     }
    10     //模拟load方法
    11     public static void myLoad() throws IOException {
    12         Properties prop = new Properties();
    13         BufferedReader buf = new BufferedReader(new FileReader("F:\info.txt"));
    14         String line = null;
    15         while((line = buf.readLine())!=null){
    16             if(line.startsWith("#")){
    17                 continue;
    18             }
    19             String[] arr = line.split("=");
    20             //System.out.println(arr[0]+"::"+arr[1]);
    21             prop.setProperty(arr[0], arr[1]);
    22             prop.list(System.out);
    23         }
    24     }
    25 
    26 }
  • 相关阅读:
    js 立即调用函数
    layui confirm
    jquery ajax
    abap append 用法
    少年愁
    SAP 物料移动tcode
    常用tcode
    ME23N PO 打印预览 打印问题
    Y_TEXT001-(保存长文本)
    ZPPR001-(展bom)
  • 原文地址:https://www.cnblogs.com/LO-ME/p/3595491.html
Copyright © 2011-2022 走看看