我们都知道在编程时,有些参数是不固定的,比如服务器地址,数据库名字等,像这种参数通常要做个配置文件,这样就可以很简单的修改设置了。配置文件可以用xml,ini,Properties等。Java中没有直接提供专门来读写INI文件的类,Java支持的是.properties文件的读写。JDK内置的 Java.util.Properties 类为我们操作 .properties文件提供了便利。
1、JDK中的Properties类 Properties 类存在于包Java.util中,该类继承自Hashtable。它提供了几个主要的方法:
(1)、load (InputStream inStream) ,从输入流中读取属性列表(键和元素对)。通过对指定的文件进行装载来获取该文件中的所有键-值对。以供getProperty(String key)来搜索。
(2)、getProperty(String key),用指定的键在此属性列表中搜索属性。也就是通过参数key,得到key所对应的value。
(3)、setProperty(String key,String value),调用Hashtable的方法put 。他通过调用基类的put方法来设置 键-值对。
(4)、store(OutputStream out,String comments),以适合使用load方法加载到 Properties 表中的格式,将此 Properties表中的属性列表(键和元素对)写入输出流。与load方法相反,该方法将键-值对写入到指定的文件中去。
(5)、clear() ,清除所有装载的键-值对。该方法在基类中提供。
2、.properties文件的形式(也可以更改为.ini):
#以下为服务器、数据库信息
server = localhost
database = mydb
dbuser = root
dbpw = 123456
#其它信息等
注:#开始的一行为注释信息
以下是一个Properties用法实例:
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream.GetField;
import java.util.Properties;
import java.util.TreeMap;
public class OFile {
//指定文件路径及文件名
private static String fileName = "c:/aa.ini";
private static Properties props=new Properties();
private static InputStream inputFile;
private static FileOutputStream outputFile;
/**
* 根据Key 读取Value
* @param key
* @return
*/
public static String readKey(String key) {
String value="";
try {
inputFile= new BufferedInputStream(new FileInputStream(fileName));
props.load(inputFile);
inputFile.close();
value = props.getProperty(key);
} catch (Exception e) {
e.printStackTrace();
}
return value;
}
public static void setKey(String key, String value){
props.setProperty(key, value);
}
/**
* 修改或添加键值对 如果key存在,修改否则添加。
* @param key
* @param value
*/
public static void saveKey(String comment) {
try {
File file = new File(fileName);
if (!file.exists())
file.createNewFile();
outputFile = new FileOutputStream(fileName);
props.store(outputFile, comment);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
outputFile.close();
} catch (IOException e) {
}
}
}
public static void main(String[] args){
//读取信息
String server=readKey("server");
String mydb=readKey("database");
System.out.println(server);
System.out.println(mydb);
//写入信息
setKey("dbuser", "freezq");
setKey("test", "aaabbbcc");
saveKey("test sava");
}
}
用Properties读写配置文件的确很方便简单,但它跟HashMap是一样的无序,写入的顺序是乱的
分享到:
相关推荐
#### 三、读取Properties配置文件 1. **读取单个键值** 在读取配置文件时,我们首先需要创建一个`Properties`对象,并使用`load`方法加载文件。接着可以通过`getProperty`方法获取指定键对应的值。 ```java ...
本文将详细介绍如何在Java中读取`properties`配置文件。 首先,我们需要了解`properties`文件的格式。一个标准的`.properties`文件通常包含多个行,每行由一个键和一个值组成,它们之间用等号(`=`)或冒号(`:`)...
在Python编程中,有时我们需要处理Java开发中常用的`.properties`配置文件。虽然Python标准库并未直接提供处理此类文件的模块,但我们可以自定义一个类来实现这个功能。本篇文章将详细探讨如何通过Python来读取并...
利用java的反射解析Properties文件转成对象 /** * 解析properties文件为对象 * @param * @param propPath * @param cls * @return * @throws InstantiationException * @throws ...
NULL 博文链接:https://liuzidong.iteye.com/blog/776637
读取properties配置文件** 在Java中读取`properties`文件通常涉及以下步骤: 1.1.1 创建`Properties`对象:`Properties`类是Java提供的内置类,用于处理`properties`文件中的键值对。 ```java Properties ...
在Java编程中,读取`.properties`配置文件是常见的任务,这些文件通常用于存储应用程序的配置参数、系统设置等信息。下面将详细介绍几种在Java中读取`.properties`配置文件的方法。 1. 使用`java.util.Properties`...
java读取properties文件的工具类,传入配置文件名字和其中的key就可以读取
大家都喜欢把配置文件放在src目录下,如果有10个以上的配置文件为什么不考虑在WEB-INF目录下新建一个文件夹,专门放配置文件;这样即好管理,文件安全性又高。亲问题已经解决,把源代码共享给大家,已经通过测试;...
读取Properties文件是Java开发中的常见操作,特别是在需要根据配置文件动态改变程序行为的时候。下面我们将详细探讨如何在Java中读取Properties文件。 首先,你需要确保你的项目中包含了一个Properties文件,比如`...
通过以上步骤,你可以使用Java的`Properties`类高效地读取、修改和保存配置文件,为你的应用程序提供灵活的配置管理。在实际项目中,你可能会将其封装到一个单独的类,如示例代码中的`PropertiesReader`,以提供更...
Java读取Properties配置文件是Java开发中常见的任务,主要用于存储应用程序的配置参数,如数据库连接字符串、系统设置等。在Java中,我们可以使用`java.util.Properties`类来处理.properties文件。下面详细介绍两种...
NULL 博文链接:https://jeemygrow.iteye.com/blog/1162827
ConfigFile configfile = ConfigFile.getInstance("ipConfig123.properties"); String ip = configfile.getkeyvalue("ip"); 可以取出ipConfig123.properties 文件中IP的内容
在Java编程中,`properties`文件是一种常用的配置文件格式,用于存储应用的配置参数或设置。这些文件通常以键值对的形式存在,如`key=value`。本篇将详细讲解如何在Java中读取`properties`文件并将其内容转换为`Map`...
最基础的方式是使用Java的I/O流来读取文本配置文件(通常是.properties格式)。例如,`java.io.FileInputStream`可以用来打开文件,然后`java.util.Properties`类可以加载并解析配置文件。以下是一个简单的示例: ...
Java的Properties类提供了读取和写入.properties配置文件的强大功能。通过使用`load()`和`store()`方法,我们可以方便地管理和更新应用的配置信息。在实际开发中,利用Properties类可以轻松地实现配置文件的管理,...
System.err.println("读取配置文件时发生错误:" + e.getMessage()); } return value; } public static void main(String[] args) { String configValue = getConfig("myConfigKey"); System.out.println(...
在Java编程中,Properties文件是用于存储配置信息的关键组件,如数据库连接字符串、应用程序设置等。在处理Properties文件时,可能会...通过学习和实践这些解决方案,你将在Java应用开发中更有效地管理和更新配置文件。
在Java编程中,读取properties文件是常见的任务,主要用于配置应用程序的参数或环境变量。properties文件通常以键值对的形式存储数据,便于管理和修改。本文将详细介绍三种在Java中读取properties文件的方法。 1. ...