java中读取Properties类

java中读取Properties类

编程入门hacker2019-05-15 8:39:589923A+A-

在java.util 包下面有一个类 Properties,该类主要用于读取以项目的配置文件(以.properties结尾的文件和xml文件)。

  Properties的构造函数有两个,一个不带参数,一个使用一个Properties对象作为参数。


  使用Properties读取.properties文件


  test.properties文件如下:


  #测试环境配置:平台路径配置


  jstrd_home=D:/TMS2006/webapp/tms2006/WEB-INF/


  dbPort = localhost


  databaseName = mydb


  dbUserName = root


  dbPassword = root


  # 以下为数据库表信息


  dbTable = mytable


  # 以下为服务器信息


  ip = 192.168.0.9


  读取test.properties的方法如下:


  impor java.io.*;


  import java.util.*;


  public class ReadProperties


  {


  public static void main(String[] args) {


  File pFile = new File("e:\test.properties");    // properties文件放在e盘下(windows)


  FileInputStream   pInStream=null;


  try {


  pInStream = new FileInputStream(pFile );


  } catch (FileNotFoundException e) {


  e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.


  }


  Properties p = new Properties();


  try {


  p .load(pInStream );       //Properties 对象已生成,包括文件中的数据


  } catch (IOException e) {


  e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.


  }


  Enumeration enu = p.propertyNames();     //取出所有的key


  //输出--1


  p.list(System.out) ;        //System.out可以改为其他的输出流(包括可以输出到文件)


  //输出--2


while( enu .hasMoreElements())


  {


  System.out.print("key="+enu.nextElement());


  System.out.print("value="+p.getProperty((String)enu .nextElement()));


  }


  }


  }


  读取xml格式的配置文件


  test.xml文件ruxi


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


  <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">


  <properties>


  <entry key="koo">bar</entry>


  <entry key="fu">baz</entry>


  </properties>


  读取xml的方法


  import java.io.IOException;


  import java.io.File;


  import java.io.FileInputStream;


  import java.util.Properties;


  public class Test {


  public static void main(String[] args) {


  File pFile = new File("e:\test.xml");    // properties文件放在e盘下(windows)


  FileInputStream pInStream = null;


  try {


  pInStream = new FileInputStream(pFile);


  Properties p = new Properties();


  p.loadFromXML(pInStream);


  p.list(System.out);


 } catch (IOException e) {


  e.printStackTrace();


  }


  }


  }


  通过list 方法将Properties写入Properties文件


  import java.io.IOException;


  import java.io.File;


  import java.io.FileInputStream;


  import java.io.PrintStream;


  import java.util.Properties;


  public class Test {


  public static void main(String[] args) {


  Properties p = new Properties();


  p.setProperty("id","dean");


  p.setProperty("password","123456");


  try{


  PrintStream fW = new PrintStream(new File("e:\test1.properties"));


  p.list(fW );        } catch (IOException e) {


  e.printStackTrace();


  }


  }


  }


  保存为xml


  import java.io.IOException;


  import java.io.File;


  import java.io.FileInputStream;


  import java.io.PrintStream;


  import java.util.Properties;


  public class Test {


  public static void main(String[] args) {


  Properties p = new Properties();


  p.setProperty("id","dean");


  p.setProperty("password","123456");


  try{


  PrintStream fW = new PrintStream(new File("e:\test1.xml"));


  p.storeToXML(fW,"test");


  } catch (IOException e) {


  e.printStackTrace();


  }


  }


  }


点击这里复制本文地址 以上内容由黑资讯整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
  • 3条评论
  • 语酌近臾2022-06-01 06:28:51
  • ="UTF-8"?>  <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">  <
  • 拥嬉抹忆2022-05-31 20:37:14
  • nbsp; // properties文件放在e盘下(windows)  FileInputStream pInStream = null;  try {  pInStream = new FileInputStream(pFile);
  • 语酌怯朲2022-06-01 03:45:05
  • p;//取出所有的key  //输出--1  p.list(System.out) ;        //System.out可以改为其他的输出流(包括可以输出到文件)  //输出--2while( enu .hasMoreElements())

支持Ctrl+Enter提交

黑资讯 © All Rights Reserved.  
Copyright Copyright 2015-2020 黑资讯
滇ICP备19002590号-1
Powered by 黑客资讯 Themes by 如有不合适之处联系我们
网站地图| 发展历程| 留言建议| 网站管理