简单操作properties格式文件

来源:互联网 发布:人工智能英文议论文 编辑:程序博客网 时间:2024/06/16 05:31
package com.first.wangbaoyin.ajax;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 ConfigInfo{// 根据key读取valuepublic static String readValue(String filePath, String key) {Properties props = new Properties();try {InputStream in = new BufferedInputStream(new FileInputStream(filePath));props.load(in);} catch (Exception e) {e.printStackTrace();System.err.println("ConfigInfoError" + e.toString());return null;}String value = props.getProperty(key);return value;}// 读取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();System.err.println("ConfigInfoError" + e.toString());}}// 写入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) {e.printStackTrace();}}public static void main(String args[]) {String filePath = "D:\\a.properties";System.out.println(ConfigInfo.readValue(filePath, "keyName"));}}


原创粉丝点击