java --配置文件读取

该工具类对于java项目中配置文件读取很方便~

示例代码:

package com.lky.util;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Properties;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
* @ClassName: ReadConfigUtil
* @Description: 读取配置文件工具类(properties类型和文件类型)
* @author lky
* @date 2015年10月26日
* @version 1.0
 */
public class ReadConfigUtil {
    private static Log log = LogFactory.getLog(ReadConfigUtil.class);

    private InputStream inputStream;
    private BufferedReader bReader;
    private Properties config;
    private String strline;

    public String getStrline() {
        return strline;
    }

    public void setStrline(String strline) {
        this.strline = strline;
    }

    /**
     * @describe 构造函数
     * @param fileName 文件名
     * @param flag   若为true,则表示读取properties类型的文件,否则为txt文件
     */
    public ReadConfigUtil(String fileName, boolean flag) {
        config = null;
        bReader = null;
        inputStream = ReadConfigUtil.class.getClassLoader().getResourceAsStream(fileName);

        try {
            if (flag) {
                config = new Properties();
                config.load(inputStream);
            } else {
                bReader = new BufferedReader(new InputStreamReader(inputStream, "utf-8"));
                setStrline(readFile());
            }

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (bReader != null) {
                    bReader.close();
                }
                if (inputStream != null) {
                    inputStream.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    public String getValue(String key) {
        return config.getProperty(key);
    }

    private  String readFile() {
        StringBuffer sBuffer = new StringBuffer();

        try {
            String line = null;
            while ((line = bReader.readLine()) != null) {
                if (line.trim().length() > 0 && (!line.trim().startsWith("#"))) {
                    sBuffer.append(line);
                    sBuffer.append("\n");
                }
            }
        } catch (Exception e) {
            log.info("读文件异常!!!!");
        }
        return sBuffer.toString();
    }

    public static void main(String args[]) {
        System.out.println(new ReadConfigUtil("sava.txt", false).getStrline());
        System.out.println(new ReadConfigUtil("test.properties", true).getValue("ip"));
        System.out.println(new ReadConfigUtil("test.properties", true).getValue("uame"));
        System.out.println(new ReadConfigUtil("test.properties", true).getValue("password"));
    }
}
时间: 2024-08-03 21:39:41

java --配置文件读取的相关文章

Java配置文件读取和路径设置

记录几种读取配置文件的方法,以及配置文件的放置路径. 1.使用PropertiesLoaderUtils工具类(springframework包提供) 优点:实时加载配置文件,修改后立即生效,不必重启 配置文件至于classpath中(与class文件放在一起,如果打jar包需打到包内),代码如下: private static void springUtil(){ Properties props = new Properties(); while(true){ try { props=Pro

Java学习-023-Properties 类 XML 配置文件读取及写入源代码

之前的几篇 Properties 文章已经讲述过了 Java 配置文件类 Properties 的基本用法,查看 JDK 的帮助文档时,也可看到在 Properties 类中还有两个方法 loadFromXML(InputStream) 和 storeToXml(OutputStream, String, String),由方法名中的 xml 不难确定这两个方法分别是读取/写入数据到 xml 文件.JDK 文档部分如下所示: 因而此文将通过源码实例演示 Properties 类是如何将数据写入

对Java配置文件Properties的读取、写入与更新操作

http://breezylee.iteye.com/blog/1340868 对Java配置文件Properties的读取.写入与更新操作 博客分类: javase properties 对Java配置文件Properties的读取.写入与更新操作注:当前项目路径是String filepath=System.getProperty("user.dir"); 对下面的程序很有用... /*** 实现对Java配置文件Properties的读取.写入与更新操作*/package tes

Java配置文件Properties的读取、写入与更新操作

/** * 实现对Java配置文件Properties的读取.写入与更新操作 */ package test; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream;

Java中读取.properties配置文件的通用类

由于Java中读取配置文件的代码比较固定,所以可以将读取配置文件的那部分功能单独作为一个类,以后可以复用.为了能够达到复用的目的,不能由配置文件中每一个属性生成一个函数去读取,我们需要一种通用的方法读取属性,即由用户给出属性名字(作为方法参数)来获取对应属性的Value值.下面是示例代码: 1 import java.io.*; 2 import java.util.*; 3 4 import org.apache.commons.logging.Log; 5 import org.apache

java中读取properties配置文件用例

在近期需要部署一个项目,所以用到了配置文件. 对于读取配置文件的过程,考虑到效率问题,决定在程序启动时将配置文件内的键值读写入变量. 这样一来,之后程序每次对键值的访问就不用在读配置文件了,而是直接取变量值. 如下是简化之后的用例,展示了一种对properties文件的读取使用方法: 1.创建配置文件data.properties,文件内容如下: user=BUPT pwd=100876 2.创建存储配置文件键值用到的文件Conf.java 1 public class Conf { 2 3 p

Java项目读取配置文件时,找不到指定的文件???

唉,读取个文件,也就是在项目里面去获得配置文件的目录,然后,变成文件,有事没事,总是出个 FileNotFoundException 系统找不到指定的文件,气死人啦.还有就是:System.getProperty("user.dir"),都说获得的是"工作目录",有老铁们在意这个,工作目录怎么理解吗?我这做了个简单的测试.但是,你把这个配置文件放在项目的根目录下面,也就是 说你的项目文件夹下面直接放一个配置文件,这个时候,就可以,啥前缀不加的,就可以读取到,这个配置

java Spring使用配置文件读取jdbc.properties

Spring使用配置文件读取jdbc.properties 在beans.xml中加入两个必须的bean [html]<bean id="propertyConfigurer"     class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">      <property name="location" value="

五种方式让你在java中读取properties文件内容不再是难题

一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC+Mybatis整合开发的项目中通过java程序读取properties文件内容的方式进行了梳理和分析,先和大家共享. 二.项目环境介绍 Spring 4.2.6.RELEASE SpringMvc 4.2.6.RELEASE Mybatis 3.2.8 Maven 3.3.9 Jdk 1.7 Id