import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/** *//**
* 读取properties文件
* @author Qutr
*
*/
public class Configuration
{
private static final Log log = LogFactory.getLog(Configuration.class);
private Properties propertie;
private FileInputStream inputFile;
private FileOutputStream outputFile;
private String propsFile = "src/com/util/headerProp.properties";//配置文件路径
/** *//**
* 初始化Configuration类
*/
public Configuration()
{
propertie = new Properties();
}
/** *//**
* 初始化Configuration类
* @param filePath 要读取的配置文件的路径+名称
*/
public Configuration(String filePath)
{
propertie = new Properties();
try {
inputFile = new FileInputStream(filePath);
propertie.load(inputFile);
inputFile.close();
} catch (FileNotFoundException ex) {
System.out.println("读取属性文件--->失败!- 原因:文件路径错误或者文件不存在");
ex.printStackTrace();
} catch (IOException ex) {
System.out.println("装载文件--->失败!");
ex.printStackTrace();
}
}//end ReadConfigInfo()
/** *//**
* 重载函数,得到key的值
* @param key 取得其值的键
* @return key的值
*/
public String getValue(String key)
{
if(propertie.containsKey(key)){
String value = propertie.getProperty(key);//得到某一属性的值
return value;
}
else
return "";
}//end getValue()
/** *//**
* 重载函数,得到key的值
* @param fileName properties文件的路径+文件名
* @param key 取得其值的键
* @return key的值
*/
public String getValue(String fileName, String key)
{
try {
String value = "";
inputFile = new FileInputStream(fileName);
propertie.load(inputFile);
inputFile.close();
if(propertie.containsKey(key)){
value = propertie.getProperty(key);
return value;
}else
return value;
} catch (FileNotFoundException e) {
e.printStackTrace();
return "";
} catch (IOException e) {
e.printStackTrace();
return "";
} catch (Exception ex) {
ex.printStackTrace();
return "";
}
}//end getValue()
/** *//**
* 清除properties文件中所有的key和其值
*/
public void clear()
{
propertie.clear();
}//end clear();
/** *//**
* 改变或添加一个key的值,当key存在于properties文件中时该key的值被value所代替,
* 当key不存在时,该key的值是value
* @param key 要存入的键
* @param value 要存入的值
*/
public void setValue(String key, String value)
{
propertie.setProperty(key, value);
}//end setValue()
/** *//**
* 将更改后的文件数据存入指定的文件中,该文件可以事先不存在。
* @param fileName 文件路径+文件名称
* @param description 对该文件的描述
*/
public void saveFile(String fileName, String description)
{
try {
outputFile = new FileOutputStream(fileName);
propertie.store(outputFile, description);
outputFile.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException ioe){
ioe.printStackTrace();
}
}//end saveFile()
/** *//**
* 通过key得到value
* @param key
*/
public String getProp(String key) {
String retVal = null;
InputStream is = getClass().getResourceAsStream(propsFile);
Properties props = new Properties();
try {
props.load(is);
retVal = props.getProperty(key);
if(retVal == null)retVal="";
} catch (Exception e) {
log.error(e.getMessage().toString());
return null;
}
return retVal;
}
}//end class ReadConfigInfo
分享到:
相关推荐
在Java编程中,读取配置文件是常见的任务,特别是在开发需要灵活配置的系统时。配置文件通常用于存储应用程序的设置,如数据库连接信息、服务器端口、第三方服务的API密钥等,这些信息可能需要根据不同的环境或需求...
Java类读取配置文件信息 Java类读取配置文件信息是Java编程语言中的一种常见操作。配置文件是指存储应用程序配置信息的文件,例如数据库连接信息、服务器地址等。在Java类中,读取配置文件信息可以使用多种方法,...
在Java编程中,读取配置文件是常见的任务,特别是在构建可扩展和可维护的应用程序时。配置文件通常用于存储应用程序的设置、连接信息或其他敏感数据,这样可以将这些信息与核心代码分离,便于管理和更新。本篇文章将...
java读取properties文件的工具类,传入配置文件名字和其中的key就可以读取
### Java读写Properties配置文件详解 #### 一、引言 在Java开发中,`Properties`类被广泛用于处理各种类型的配置文件。这些文件通常包含了应用程序运行时所需的配置信息,如数据库连接信息、系统参数等。`...
在Java编程中,读取配置文件是常见的任务,主要用于存储应用程序的设置或环境变量,以方便管理和维护。Java提供了一个内置的`java.util.Properties`类,用于处理`.properties`文件,这种格式通常用来存储键值对,即...
标题“java读取配置文件源代码”表明我们将讨论一个Java程序,该程序用于从`.properties`文件中加载和解析配置数据。`.properties`文件是一种简单的键值对格式,广泛用于存储Java应用程序的配置信息。 首先,我们...
- 考虑到频繁读写配置文件可能影响性能,可以考虑使用缓存。在内存中保存配置的副本,只有在必要时才写回文件,减少磁盘I/O。 通过以上步骤,我们可以创建一个高效、易用的配置文件管理工具,不仅能够动态修改配置...
在Java编程中,读取配置文件是常见的任务,特别是在构建可扩展和可维护的应用程序时。配置文件通常用于存储应用程序的动态设置,如数据库连接字符串、API密钥、服务器地址等,这些信息需要在运行时根据环境进行调整...
在Java编程中,读取配置文件是常见的任务,特别是在构建可扩展和灵活的应用程序时。配置文件通常存储了应用程序的参数、数据库连接信息、API密钥等敏感数据,需要在运行时动态加载。本实例代码将展示如何使用`Class....
在Java编程中,读取配置文件是常见的任务,这些配置文件可以是XML、properties或纯文本(txt)格式。配置文件通常用于存储应用程序的设置、连接信息和其他动态可配置的数据,以便于在运行时访问和修改。下面我们将...
在Java编程中,读取配置文件是常见的任务,它允许我们分离程序的配置信息,如数据库连接字符串、API密钥等,与实际的代码逻辑。这样可以方便地更新和管理这些参数,而无需重新编译或部署应用程序。下面将详细解释...
这个程序使用 SAX 解析器读取 XML 配置文件,提取出 dbhost、dbuser、dbpassword 等配置信息,并将其存储在 Properties 对象中。 使用 XML 作为 Java 程序的配置文件可以提高系统的灵活性和可维护性,而使用 SAX ...
在web项目中读取yml配置文件的工具类.可以实现将 server : port : portnumber : 8081 转换为 key为"server.port.portnumber",值为"8081"的Map,String>集合
在Android开发中,读写配置文件是常见的任务,主要用于存储应用程序的设置、用户偏好或者其他持久化数据。配置文件通常以XML或JSON格式存在,因为它们结构清晰,易于解析。本实例将详细介绍如何在Android中进行读取...
JAVA 高手解析 XML 配置文件的读取操作 本文主要讲解了 Java 中如何读取 XML 配置文件,并对 XML 解析器进行了分类,分别介绍了 DOM 和 SAX 两种解析方式的特点和使用场景,并提供了一个使用 SAX 解析器读取 XML ...
在Java编程中,读取配置文件是常见的任务,它允许我们分离程序的配置信息,使得配置可以独立于代码进行修改,提高程序的可维护性和灵活性。这篇内容将深入讲解Java如何读取XML、INI等不同类型的配置文件。 一、XML...