zoukankan      html  css  js  c++  java
  • 用java读写properties文件的代码

    package com.LY;
    import java.io.BufferedInputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Enumeration;
    import java.util.Properties;
    public class TestMain {
    // 根据key读取value
    public static String readValue(String filePath, String key) {
      Properties props = new Properties();
      try {
        InputStream in = new BufferedInputStream(new FileInputStream(filePath));
        props.load(in);
        String value = props.getProperty(key);
        System.out.println(key + value);
        return value;
      } catch (Exception e) {
        e.printStackTrace();
        return null;
      }
    }
      // 读取properties的全部信息
      public static void readProperties(String filePath) {
      Properties props = new Properties();
      try {
        InputStream in = new BufferedInputStream(new FileInputStream(filePath));
        props.load(in);
        Enumeration en = props.propertyNames();
        while (en.hasMoreElements()) {
          String key = (String) en.nextElement();
          String Property = props.getProperty(key);
          System.out.println(key + Property);
        }
      } catch (Exception e) { 
        e.printStackTrace();
      }
    }
    // 写入properties信息
    public static void writeProperties(String filePath, String parameterName,
      String parameterValue) {
      Properties prop = new Properties();
        try {
          InputStream fis = new FileInputStream(filePath);
          // 从输入流中读取属性列表(键和元素对)
          prop.load(fis);
          // 调用 Hashtable 的方法 put。使用 getProperty 方法提供并行性。
          // 强制要求为属性的键和值使用字符串。返回值是 Hashtable 调用 put 的结果。
          OutputStream fos = new FileOutputStream(filePath);
          prop.setProperty(parameterName, parameterValue);
          // 以适合使用 load 方法加载到 Properties表中的格式,
          // 将此 Properties 表中的属性列表(键和元素对)写入输出流
          prop.store(fos, "Update '" + parameterName+ "' value");
        } catch (IOException e) {
          System.err.println("Visit " + filePath + " for updating " + parameterName + " value error");
        }
      }
      public static void main(String[] args) {
        readValue("info.properties", "url");
        writeProperties("info.properties", "age","22");
        readProperties("info.properties");
        System.out.println("OK");
      }
    }
  • 相关阅读:
    mybatis-plus 相关
    Nginx 相关
    Docker 相关
    shiro & jwt
    Java GC
    C++ Q&A
    epoll ET & LT
    关于 free 命令显示内存使用情况问题
    Metaprogramming in Ruby: It’s All About the Self
    On The Value Of Fundamentals In Software Development (基础知识在软件开发中的价值)
  • 原文地址:https://www.cnblogs.com/chen-lhx/p/5002818.html
Copyright © 2011-2022 走看看