WEB开发网
开发学院WEB开发Jsp 使用Properties从文件获取属性 阅读

使用Properties从文件获取属性

 2008-01-05 18:45:39 来源:WEB开发网   
核心提示:import java.util.*;import java.io.*;/** * refer to http://www-900.ibm.com/developerWorks/cn/java/j-tiger02254/index_eng.sHtml </br> * or http://www-900.i

import java.util.*;
import java.io.*;

/**
 * refer to http://www-900.ibm.com/developerWorks/cn/java/j-tiger02254/index_eng.sHtml  </br>
 * or http://www-900.ibm.com/developerWorks/cn/java/j-tiger02254/index.shtml
 */
public class LoadPRoperties
{
 public static void main(String[] args) throws Exception {
 Properties prop = new Properties();

 //load properties from configuration file
 System.out.println("From properties file:");
 FileInputStream fis = new FileInputStream("sample.properties");
 prop.load(fis);
   prop.list(System.out);
 System.out.println("\nThe foo property: " + prop.getProperty("foo"));
 
 //load properties from xml property file(Tiger new method)
 System.out.println("From xml file:");
 fis =new FileInputStream("sampleprops.xml");
 /**
  *<pre>The XML document must have the following DOCTYPE declaration:
  *<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
  *the dtd file :
  *<?xml version="1.0" encoding="UTF-8"?>
  *<!-- DTD for properties -->
  *<!ELEMENT properties ( comment?, entry* ) >
  *<!ATTLIST properties version CDATA #FIXED "1.0">
  *<!ELEMENT comment (#PCDATA) >
  *<!ELEMENT entry (#PCDATA) >
  *<!ATTLIST entry key CDATA #REQUIRED>
     *</pre>
  */
 prop.loadFromXML(fis); 
 prop.list(System.out);
 System.out.println("\nThe foo property: " + prop.getProperty("foo"));
 
 //生成xml文件
 System.out.println("prodUCe a xml file");
 prop = new Properties();
 prop.setProperty("one-two", "buckle my shoe");
 prop.setProperty("three-four", "shut the door");
   prop.setProperty("five-six", "pick up sticks");
 prop.setProperty("seven-eight", "lay them straight");
   prop.setProperty("nine-ten", "a big, fat hen");
 FileOutputStream fos = new FileOutputStream("rhyme.xml");
 /*
  *default encoding is UTF-8,
  * if you need specify encoding,
  * use storeToXML(OutputStream os,String comment,String encoding) instead
  */
 prop.storeToXML(fos, "Rhyme");//prop.storeToXML(fos, "Rhyme","GBK");
   fos.close();//The specified stream remains open after storeToXML() returns,so must close obviously
 /**
  *生成的xml如下(DTD如上所述):
  *<?xml version="1.0" encoding="UTF-8"?>
  *<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
  *<properties>
  *<comment>Rhyme</comment>
  *<entry key="seven-eight">lay them straight</entry>
  *<entry key="five-six">pick up sticks</entry>
  *<entry key="nine-ten">a big, fat hen</entry>
  *<entry key="three-four">shut the door</entry>
  *<entry key="one-two">buckle my shoe</entry>
  *</properties>
  */
 }
}


Tags:使用 Properties 文件

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接