XMLで記述したプロパティ
戻る
::::::::::::::
LoadTest.java
::::::::::::::
import java.io.*;
import java.util.*;
/**
$Id: props.html,v 1.1 2009/06/22 16:12:21 kishi Exp kishi $
*/
public class LoadTest {
public LoadTest( String filename ) {
Properties prop = new Properties();
try {
InputStream stream = new FileInputStream( filename );
prop.loadFromXML( stream );
stream.close();
// 一覧を出力
prop.list( System.out );
System.out.println( prop.getProperty( "最初のURL" ) );
} catch ( IOException ex ) {
ex.printStackTrace();
}
}
public static void main( String[] args ) {
new LoadTest( args[ 0 ] );
}
}
/*
$ javap java.util.Properties
Compiled from "Properties.java"
public class java.util.Properties extends java.util.Hashtable{
protected java.util.Properties defaults;
public java.util.Properties();
public java.util.Properties(java.util.Properties);
public synchronized java.lang.Object setProperty(java.lang.String, java.lang.String);
public synchronized void load(java.io.InputStream) throws java.io.IOException;
public synchronized void save(java.io.OutputStream, java.lang.String);
public synchronized void store(java.io.OutputStream, java.lang.String) throws java.io.IOException;
public synchronized void loadFromXML(java.io.InputStream) throws java.io.IOException, java.util.InvalidPropertiesFormatException;
public synchronized void storeToXML(java.io.OutputStream, java.lang.String) throws java.io.IOException;
public synchronized void storeToXML(java.io.OutputStream, java.lang.String, java.lang.String) throws java.io.IOException;
public java.lang.String getProperty(java.lang.String);
public java.lang.String getProperty(java.lang.String, java.lang.String);
public java.util.Enumeration propertyNames();
public void list(java.io.PrintStream);
public void list(java.io.PrintWriter);
static {};
}
*/
::::::::::::::
SaveTest.java
::::::::::::::
import java.io.*;
import java.util.*;
/**
$Id: props.html,v 1.1 2009/06/22 16:12:21 kishi Exp kishi $
@author KISHI Yasuhiro
*/
public class SaveTest {
private static final String PROP = "my.properties";
public SaveTest() {
Properties prop = new Properties();
prop.setProperty( "壱", "one" );
prop.setProperty( "弐", "two" );
prop.setProperty( "参", "three" );
prop.setProperty( "四", "four" );
// ちゃんとエスケープされるか確認する
prop.setProperty( "最初のURL", "http://www.google.info/test?aaa=bbb&ccc=ddd" );
try {
OutputStream stream = new FileOutputStream( PROP );
prop.storeToXML( stream, "XMLで記述されたプロパティファイルですねん!", "Shift_JIS" );
stream.close();
} catch ( IOException exception ) {
exception.printStackTrace();
}
}
public static void main( String[] args ) {
new SaveTest();
}
}
::::::::::::::
my.properties
::::::::::::::
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>XMLで記述されたプロパティファイルですねん!</comment>
<entry key="壱">one</entry>
<entry key="最初のURL">http://www.google.info/test?aaa=bbb&ccc=ddd</entry>
<entry key="四">four</entry>
<entry key="弐">two</entry>
<entry key="参">three</entry>
</properties>
$ java LoadTest my.properties
-- listing properties --
壱=one
最初のURL=http://www.google.info/test?aaa=bbb&c...
四=four
弐=two
参=three
http://www.google.info/test?aaa=bbb&ccc=ddd
戻る