您的位置:首页 > 编程语言 > Java开发

关于java读取properties文件的路径…

2016-06-08 09:23 453 查看
转自:http://longdechuanren.iteye.com/blog/1786419

之前对于JAVA读取properties文件的路径一直模棱两可,晚上百度上查了一下资料然后自己做实验验证了一下,当前做一下记录,与写的不对的欢迎大家留言指正



当前实验工程的目录如上图所示,如果我们要读取的properties文件是放到classpath目录下(即放到src目录下,eclipse会将其自动编译到bin\目录下)这个是比较容易的看下面的代码:

package org.guo.leaning.path;

import java.io.File;

import java.io.FileInputStream;

import java.util.Properties;

public class ReadFile {

    public
static void main(String[] args) throws Exception {

System.err.println(ReadFile.class.getResource(""));

   
   
System.err.println(ReadFile.class.getResource("/"));

   
   

   
   

    }

   

private static String getPropsValue(String key) throws Exception
{

InputStream inputStream =
ReadFile.class.getClassLoader().getResourceAsStream("11.properties");

   
   
props.load(inputStream);

   
    return
props.getProperty(key);

}

//上述的情况都是在properties文件在classpath的情况下,使用的,如果我有个个properties文件不再classpath目录下,比如:我在项目根路径下建立了一个文件夹config里面有个11.proerties文件,那么我们该如何加载呢,此时我们就不能使用classLoader的相关方法了,因为他只能找classpath路径下的:

private static String getPropsValue(String key) throws Exception
{

   
    Properties
props = new Properties();

   
    File f = new
File("E:\\workspace\\practice\\config\\11.properties");

   
   
props.load(new FileInputStream(f));

   
        
props.load(inputStream);

   
    return
props.getProperty(key);

    }

最后一个文件夹会不会包含在classpath路径下,主要在应用的.classpath文件下配置 如下:

< ?xml version="1.0" encoding="UTF-8"? >

< classpath >

    <
classpathentry kind="src" path="src" />

    <
classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER" />

    <
classpathentry kind="output" path="bin" />

</ classpath >
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: