今天为了通过java读取properties文件,google了很长时间,终于找到了。现在特记录之和大家一起分享。 
    下面直接贴出代码:java类

public class Mytest
public static void readFile(String fileName) {//传入参数fileName是要读取的资源文件的文件名如(file.properties)
InputStream in = null;
Properties pros = new Properties();
try {
if (null != fileName) {
//前提是资源文件必须和Mytest类在同一个包下
in = Mytest.class.getResourceAsStream(fileName);
//得到当前类的路径,并把资源文件名作为输入流
pros.load(in);
Enumeration en = pros.propertyNames();//得到资源文件中的所有key值
while (en.hasMoreElements()) {
String key = (String) en.nextElement();
System.out.println("key=" + key + " value=" + pros.getProperty(key));
//输出资源文件中的key与value值
}
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("读取资源文件出错");
} finally {
try {
if (null != in) {
in.close();
}
} catch (IOException e) {
e.printStackTrace();
System.out.println("关闭流失败");
}
} }

方法二:

import java.util.MissingResourceException;
import java.util.ResourceBundle; public class Messages {
private static final String BUNDLE_NAME = "com.xxx.cs.mm.service.messages"; //messages.properties文件和Messages类在同一个包下,包名:com.xxx.cs.mm.service private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME); private Messages() {
} public static String getString(String key) {
try {
return RESOURCE_BUNDLE.getString(key);
} catch (MissingResourceException e) {
return '!' + key + '!';
}
}
}

转自:http://duqiangcise.iteye.com/blog/319793

使用J2SE API读取Properties文件的六种方法

1。使用java.util.Properties类的load()方法
示例: InputStream in = lnew BufferedInputStream(new FileInputStream(name));
Properties p = new Properties();
p.load(in);

2。使用java.util.ResourceBundle类的getBundle()方法
示例: ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault());

3。使用java.util.PropertyResourceBundle类的构造函数
示例: InputStream in = new BufferedInputStream(new FileInputStream(name));
ResourceBundle rb = new PropertyResourceBundle(in);

4。使用class变量的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

5。使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法
示例: InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name);
Properties p = new Properties();
p.load(in);

6。使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法
示例: InputStream in = ClassLoader.getSystemResourceAsStream(name);
Properties p = new Properties();
p.load(in);

补充

Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法
示例:InputStream in = context.getResourceAsStream(path);
Properties p = new Properties();
p.load(in);

注意:

this.getclass.getResourceAsStream(name);  //类与资源文件同级--同一个目录下

this.class.getClassLoader().getResourceAsStream(name); //资源文件与classpath同级。

未知来源

最新文章

  1. 腾讯 auth_token
  2. call、apply、bind的区别
  3. Pro ASP.NET MVC –第六章 MVC的基本工具
  4. BED format
  5. leetcode 41 First Missing Positive ---java
  6. csu 1312 榜单(模拟题)
  7. 基于SAML的单点登录介绍
  8. HTTP 协议实现
  9. LaTeX中表格多行显示的最简单设置方法
  10. php与web页面交互
  11. AngularJS 全局scope与指令 scope通信
  12. Django Windows环境下部署
  13. 分享一个基于ssm框架下的webService接口开发
  14. js 算數(Math)對象
  15. CGLIB代理基础
  16. Webwork【05】请求跳转前 xwork.xml 的读取
  17. vim学习日志(8):linux查看和修改文件编码
  18. Angular6
  19. javascrict中innerhtml和innerText的关系
  20. 关于java.lang.Exception:No tests found matching的一系列解决方法

热门文章

  1. Java 判断操作系统类型(适用于各种操作系统)
  2. 高级PHP应用程序漏洞审核技术
  3. C#中数据库连接的配置文件
  4. MySQL partition分区I
  5. 求奇数偶数的和,,利用while循环
  6. java线程(3)-多线程死锁
  7. ECSHOP首页调用指定分类下的商品
  8. poj magic number
  9. Linux文件虚拟机系统只读Read-only file system的快速解决方法
  10. Bash字符串的处理