Java读取项目内的资源文件
2014-10-27 15:28
555 查看
Java读取项目的资源文件,首先要做的就是访问到这个文件,访问文件的路径我觉得有两种做法,第一种是通过类加载路径来实现,这种方法可以访问sourcefolder下面的文件
第二种方法是通过项目的根目录来访问文件,这样可以获取到非sourcefolder目录底下的文件。接下来贴上代码吧。
1.项目文件目录结构展示
2.然后是调用代码以及说明
package com.wzxy.my.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class test1 {
/**
* 读取resources文件夹下面的内容,通过绝对路径来读取文件,绝对路径从类加载器开始
*/
public void testGetResource(){
Properties prop = new Properties();
InputStream in = Object.class.getResourceAsStream("/resources/test1.properties");
try {
prop.load(in);
System.out.println("开始加载文件");
System.out.println(prop.getProperty("myname").trim());
System.out.println(prop.getProperty("myage").trim());
in.close();
} catch (IOException e) {
e.printStackTrace();
try {
in.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
/**
* 获取不是sourcefolder文件夹下的文件
* 1.Object.class.getResourceAsStream("/res/test2.properties");这样是获取不到的,
* 因为文件没有在类加载器文件底下。
* 2.如果该文件位于同样是sourcefolder的另一个文件夹地下,也是可以这样访问的,
* 也就是说只要是位于sourcefolder底下都可以通过类加载器路径加载
* 3.跟调用类位于同一个目录底下的文件可以直接读取 InputStream in = test1.class.getResourceAsStream("test4.properties");
* 4.读取非source文件夹底下的文件可以采用in = new FileInputStream(new File("res/test2.properties"));
*
*/
public void testgetresource2(){
Properties prop = new Properties();
FileInputStream in;
try {
in = new FileInputStream(new File("WebRoot/res3/test5.properties"));
try {
prop.load(in);
System.out.println("开始加载文件");
System.out.println(prop.getProperty("myname").trim());
System.out.println(prop.getProperty("myage").trim());
in.close();
} catch (IOException e) {
e.printStackTrace();
try {
in.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
} catch (FileNotFoundException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
}
}
好了,就这些了。
第二种方法是通过项目的根目录来访问文件,这样可以获取到非sourcefolder目录底下的文件。接下来贴上代码吧。
1.项目文件目录结构展示
2.然后是调用代码以及说明
package com.wzxy.my.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class test1 {
/**
* 读取resources文件夹下面的内容,通过绝对路径来读取文件,绝对路径从类加载器开始
*/
public void testGetResource(){
Properties prop = new Properties();
InputStream in = Object.class.getResourceAsStream("/resources/test1.properties");
try {
prop.load(in);
System.out.println("开始加载文件");
System.out.println(prop.getProperty("myname").trim());
System.out.println(prop.getProperty("myage").trim());
in.close();
} catch (IOException e) {
e.printStackTrace();
try {
in.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
/**
* 获取不是sourcefolder文件夹下的文件
* 1.Object.class.getResourceAsStream("/res/test2.properties");这样是获取不到的,
* 因为文件没有在类加载器文件底下。
* 2.如果该文件位于同样是sourcefolder的另一个文件夹地下,也是可以这样访问的,
* 也就是说只要是位于sourcefolder底下都可以通过类加载器路径加载
* 3.跟调用类位于同一个目录底下的文件可以直接读取 InputStream in = test1.class.getResourceAsStream("test4.properties");
* 4.读取非source文件夹底下的文件可以采用in = new FileInputStream(new File("res/test2.properties"));
*
*/
public void testgetresource2(){
Properties prop = new Properties();
FileInputStream in;
try {
in = new FileInputStream(new File("WebRoot/res3/test5.properties"));
try {
prop.load(in);
System.out.println("开始加载文件");
System.out.println(prop.getProperty("myname").trim());
System.out.println(prop.getProperty("myage").trim());
in.close();
} catch (IOException e) {
e.printStackTrace();
try {
in.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
} catch (FileNotFoundException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
}
}
好了,就这些了。
相关文章推荐
- java web项目读取资源文件
- java读取项目资源文件
- java读取资源文件
- 在java程序里读取Struts资源文件里的KEY
- Java web开发中读取资源文件
- java读取资源文件的方法
- Java中读取资源文件的工具类
- java.util.Properties 读取资源文件
- 项目开发中经常要用到的知识----Java读取.Properties,.Xml,.Ini文件(二)
- wp7读取项目生成的资源(Resource)文件
- Java或者JAR包获取读取资源文件的路径的问题总结
- java读取资源文件
- Java或者JAR包获取读取资源文件的路径的问题总结
- JAVA读取资源文件乱码的另一种解决办法
- java读取资源文件:
- java中读取资源文件
- 把项目中的xml文件的生成操作改为“嵌入的资源”,我在这个项目中怎么读取xml文件里的内容?
- java读取资源文件的方式
- 类加载方式读取Java项目中的文件
- java读取配置文件(web项目和java项目都可以)