http://blog.csdn.net/hopestar2/article/details/6372883

在项目中经常用到各种配置文件,有.properties的,也有.xml格式的

都可以通过java.utils.Property类进行处理。

1. 读取.properties文件

  1. File pFile = new File("test.properties");
  2. FileInputStream   pInStream=null;
  3. try {
  4. pInStream = new FileInputStream(pFile );
  5. } catch (FileNotFoundException e) {
  6. e.printStackTrace();
  7. }
  8. Properties p = new Properties();
  9. try {
  10. p.load(pInStream );
  11. } catch (IOException e) {
  12. e.printStackTrace();
  13. }
  14. Enumeration enu = p.propertyNames();  //取出所有的key
  15. p.list(System.out) ;
  16. while(enu.hasMoreElements())
  17. {
  18. String thisKey = (String)enu.nextElement();
  19. System.out.println("key="+thisKey);
  20. System.out.println("value="+p.getProperty(thisKey));
  21. }

.properties测试文件内容如下:

name = tinyfun
    age = 25
    sex = man
    title = software developer

2. 读取XML文件

  1. File pFile = new File("test.xml");
  2. FileInputStream pInStream = null;
  3. try {
  4. pInStream = new FileInputStream(pFile);
  5. Properties p = new Properties();
  6. p.loadFromXML(pInStream);
  7. p.list(System.out);
  8. } catch (IOException e) {
  9. e.printStackTrace();
  10. }

xml文件如下:

  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2. <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
  3. <properties>
  4. <comment>test</comment>
  5. <entry key="age">25</entry>
  6. <entry key="name">tinyfun</entry>
  7. <entry key="sex">man</entry>
  8. <entry key="title">software developer</entry>
  9. </properties>

3. 写入XML文件

  1. Properties p = new Properties();
  2. p.setProperty("name","tinyfun");
  3. p.setProperty("age","25");
  4. p.setProperty("sex","man");
  5. p.setProperty("title","software developer");
  6. try{
  7. PrintStream fW = new PrintStream(new File("test.xml"));
  8. p.storeToXML(fW,"test");
  9. } catch (IOException e) {
  10. e.printStackTrace();
  11. }

4. 写入.properties文件

  1. Properties p = new Properties();
  2. p.setProperty("name","tinyfun");
  3. p.setProperty("age","25");
  4. p.setProperty("sex","man");
  5. p.setProperty("title","software developer");
  6. try{
  7. PrintStream fW = new PrintStream(new File("test.properties"));
  8. p.list(fW );        }
  9. catch (IOException e) {
  10. e.printStackTrace();
  11. }
 
 

Java之Property类使用的更多相关文章

  1. java中Property类的基本用法

    1 配置.properties文件 2 获取输入流的方法 1)FileInputStream fi = new FileInputStream(properties文件路径); 2)InputStre ...

  2. 两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz

    1.Java Timer定时 首先继承java.util.TimerTask类实现run方法 import java.util.TimerTask; public class EmailReportT ...

  3. Java中Properties类

    1 简介: JDK提供的java.util.Properties类继承自Hashtable类并且实现了Map接口,用map来存储key-value数据,所以存入的数据是无序的.其中键和值都是字符串类型 ...

  4. Java使用ResourceBundle类读取properties文件中文乱码的解决方案

    Java使用java.util.ResourceBundle类的方式来读取properties文件时不支持中文,要想支持中文必须将文件设置为ISO-8859-1编码格式,这对于开发工具默认为UTF-8 ...

  5. Java中Object类hashCode的底层实现

    Java中Object类hashCode的底层实现 openjdk\jdk\src\share\native\java\lang\Object.c 42 static JNINativeMethod ...

  6. java自定义注解类

    一.前言 今天阅读帆哥代码的时候,看到了之前没有见过的新东西, 比如java自定义注解类,如何获取注解,如何反射内部类,this$0是什么意思? 于是乎,学习并整理了一下. 二.代码示例 import ...

  7. 基础知识(05) -- Java中的类

    Java中的类 1.类的概念 2.类中的封装 3.对象的三大特征 4.对象状态 5.类与类之间的关系 ------------------------------------------------- ...

  8. java中Inetaddress类

    InetAddress类 InetAddress类用来封装我们前面讨论的数字式的IP地址和该地址的域名. 你通过一个IP主机名与这个类发生作用,IP主机名比它的IP地址用起来更简便更容易理解. Ine ...

  9. Java集合---Array类源码解析

    Java集合---Array类源码解析              ---转自:牛奶.不加糖 一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Prim ...

随机推荐

  1. nefu 72 N!

    Description Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N! Input One N in one line, ...

  2. 经典.net面试题目(2)

    101.在.net(C# or vb.net)中如何取消一个窗体的关闭. 答:private void Form1_Closing(object sender, System.ComponentMod ...

  3. 认识cookie与session的区别与应用

    通常我们所说的浏览器自动保存密码,下次不用登陆,网页换皮肤,用户引导,提示一次就不再出现的内容,大部分通过cookie或者session来实现的,在这次制作用户引导中,本人就用到了cookie的内容, ...

  4. javascript 浏览器

    hashchange事件 window.location.hash.slice(1) 添加和修改历史记录条目LINKHTML5引进了history.pushState()方法和history.repl ...

  5. frameset框架样式 加边框

    <frameset rows="580,*" FRAMESPACING="3"> <frame noresize name="Top ...

  6. Linux下 Unison 实现文件双向同步

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://hx100.blog.51cto.com/44326/612301 一.Uniso ...

  7. git 提高下载速度

    1.  直接下载分支,就不用下载不需要的源码了. git clone --depth 1 git://github.com/TI-OpenLink/wl18xx.git  --branch ol_r8 ...

  8. VB webbrowser 控件的应用(跨域 内嵌网页元素的访问)

    自动登录财付通,难点在于会出现验证码,并且验证码页是在iframe元素下的,出于各种安全考虑,webbrowser控件不提供这种访问机制!当然,第一想到的是将这个网页拿出来,可是输入完毕验证码后,点击 ...

  9. 转 当当网资深DBA:DB运维四大现代化的实现

    位好,今天我的主题是 <DB运维的四个现代化> ,看标题就能明白,是关于DBA自动化运维平台的事情.http://dbaplus.cn/news-21-855-1.html 主要是分享下我 ...

  10. 【SQL】SQL

    SQL基础 本文参照:http://www.w3school.com.cn/sql/ SQL 结构化查询语言(Structured Query Language). 对于大小写不敏感. SQL 使用单 ...