很多时候,我们都将配置文件放在eclipse的src目录下,这个位置,相当于,当导出可执行jar包后,配置文件放在和jar同级的目录中,比如jar包放在/opt目录下,则配置文件放在/opt下,则jar包就可以读取配置文件中的内容。此时,java代码中可以通过

String path=CommonOperation.class.getResource("/").getPath();

FileInputStream fin = new FileInputStream(path+"Config.properties");

来读取配置文件。

但要注意,用这种方法在eclipse下调试程序的时候,会发现使用setProperty(String  key ,String value)无法修改配置文件的内容,原因是 eclipse在编译文件时,已经把配置文件复制到工程的bin目录下了,修改其实已经保存在bin目录下的那个配置文件里面了。

java读取配置文件内容的代码如下:

String path=CommonOperation.class.getResource("/").getPath();
 InputStream fis = new FileInputStream(path+"Config.properties");
 Properties prop = new Properties();
 prop.load(fis);
 fis.close();
 return prop.getProperty(key);

java修改配置文件内容的代码如下:

Properties props = new Properties();
String path=CommonOperation.class.getResource("/").getPath();
FileInputStream fin = new FileInputStream(path+"Config.properties");
props.load(fin); //load file
fin.close();

props.setProperty(key,value);
OutputStream fout = new FileOutputStream(path+"Config.properties");
props.store(fout, "dd");//save file
fout.close();

java 读取src下的配置文件的更多相关文章

  1. 解决:java 读取 resources 下面的 json 文件

    前言:java 读取 工程下的配置文件,文件类型为 json(*.json),记录一下始终读取不到 json 文件的坑.maven项目 直接上工具类代码 package com.yule.compon ...

  2. 使用ResourceBundle 类读取 src 下的 xxx.properties 文件

    之前要读取 src 下的 .properties 文件都是使用的类加载器,加载类路径下的资源文件当做一个流来处理,load 到一个 Properties 对象上. jdbc.properties 代码 ...

  3. Java读取classpath下的文件

    写Java程序时会经常从classpath下读取文件,是时候该整理一下了,并在不断深入的过程中,陆续补充上. 现在Java project 都以maven项目居多, 比如像下面这样的一个项目结构: 编 ...

  4. java 读取XML文件作为配置文件

    首先,贴上自己的实例: XML文件:NewFile.xml(该文件与src目录同级) <?xml version="1.0" encoding="UTF-8&quo ...

  5. Spring Junit 读取WEB-INF下的配置文件

    假设Spring配置文件为applicationContext.xml 一.Spring配置文件在类路径下面 在Spring的java应用程序中,一般我们的Spring的配置文件都是放在放在类路径下面 ...

  6. java读取目录下所有csv文件数据,存入三维数组并返回

    package dwzx.com.get; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; ...

  7. 关于java读取和写入properties配置文件的内容

    一般通过使用流的方式进行读取 代码示例如下: package com.zznode.transmit.util; import java.io.FileInputStream; import java ...

  8. 读取 classes下的配置文件

    调用: Configure.getValue("discount.strategy.class"); 配置类: package com.util; import com.sun.j ...

  9. Java 读取目录下的所有文件

    package util; import java.io.File; import java.util.ArrayList; import java.util.List; import org.apa ...

随机推荐

  1. c#数据格式转换汇总

    时间差的公式,求出时间相差的转换成刻度值 DateTime endTime = , , , , , , , , , , , , ); TimeSpan temp = new TimeSpan(star ...

  2. SVN中分支的建立与合并

    转载    出处:http://yaozhong1988.blog.163.com/blog/static/141737885201162671635126/ 一.  SVN分支的意义:     简单 ...

  3. 安装git和配置

     首先更新系统 yum  -y update  安装依赖的包 yum -y install curl-devel expat-devel gettext-devel openssl-devel zli ...

  4. python系列十三:Python3 输入输出

    #!/usr/bin/python #Python3 输入输出 import math'''输出格式美化Python两种输出值的方式: 表达式语句和 print() 函数.第三种方式是使用文件对象的 ...

  5. JavaScript数据结构与算法-数组练习

    一. 创建一个记录学生成绩的对象,提供一个添加成绩的方法,以及一个显示学生平均成绩的方法. // 创建一个记录学生成绩的对象 const Students = function Students () ...

  6. Vue.js中this.$nextTick()的使用

    this.$nextTick()将回调延迟到下次 DOM 更新循环之后执行.在修改数据之后立即使用它,然后等待 DOM 更新.它跟全局方法 Vue.nextTick 一样,不同的是回调的 this 自 ...

  7. Android基础入门教程

    http://www.kancloud.cn/wizardforcel/w3school-android/100491

  8. 20170401 ABAP调用CIS webservice

    问题: SAP  abap SRM java  调webservice 不通, CIS java  这边的webservice 可以通, WHY? key:请求头,系统框架的问题, LF:因为请求头的 ...

  9. assign,copy,retain的区别以及weak和strong的区别

    @property (nonatomic, assign) NSString *title;    什么是assign,copy,retain之间的区别?      assign: 简单赋值,不更改索 ...

  10. 【leetcode刷题笔记】Word Ladder II

    Given two words (start and end), and a dictionary, find all shortest transformation sequence(s) from ...