厦 门 外 围 - 厦 门 的 外 围 资 源

  厦 门 外 围 - 厦 门 的 外 围 资 源 -薇芯【81343628】【81343628】【高端外围资源】【诚信合作,非诚勿扰!】可直接添加 !今天为了通过java读取properties文件,google了很长时间,终于找到了。现在特记录之和大家一起分享。
  下面直接贴出代码:java类
  public class Mytest
  厦 门 外 围 - 厦 门 的 外 围 资 源 -薇芯【81343628】【81343628】【高端外围资源】【诚信合作,非诚勿扰!】可直接添加 !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 + ‘!‘;
  }
  }
  }
  使用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);
  补充
  厦 门 外 围 - 厦 门 的 外 围 资 源 -薇芯【81343628】【81343628】【高端外围资源】【诚信合作,非诚勿扰!】可直接添加 !Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法
  示例:InputStream in = context.getResourceAsStream(path);
  Properties p = new Properties();
  p.load(in);

猜你喜欢

转载自www.cnblogs.com/zhaojun-20002003/p/12784132.html