FileDocCategorySizeDatePackage
PropertyResourceBundle.javaAPI DocJava SE 6 API6320Tue Jun 10 00:25:54 BST 2008java.util

PropertyResourceBundle

public class PropertyResourceBundle extends ResourceBundle
PropertyResourceBundle is a concrete subclass of ResourceBundle that manages resources for a locale using a set of static strings from a property file. See {@link ResourceBundle ResourceBundle} for more information about resource bundles.

Unlike other types of resource bundle, you don't subclass PropertyResourceBundle. Instead, you supply properties files containing the resource data. ResourceBundle.getBundle will automatically look for the appropriate properties file and create a PropertyResourceBundle that refers to it. See {@link ResourceBundle#getBundle(java.lang.String, java.util.Locale, java.lang.ClassLoader) ResourceBundle.getBundle} for a complete description of the search and instantiation strategy.

The following example shows a member of a resource bundle family with the base name "MyResources". The text defines the bundle "MyResources_de", the German member of the bundle family. This member is based on PropertyResourceBundle, and the text therefore is the content of the file "MyResources_de.properties" (a related example shows how you can add bundles to this family that are implemented as subclasses of ListResourceBundle). The keys in this example are of the form "s1" etc. The actual keys are entirely up to your choice, so long as they are the same as the keys you use in your program to retrieve the objects from the bundle. Keys are case-sensitive.

# MessageFormat pattern
s1=Die Platte \"{1}\" enthält {0}.

# location of {0} in pattern
s2=1

# sample disk name
s3=Meine Platte

# first ChoiceFormat choice
s4=keine Dateien

# second ChoiceFormat choice
s5=eine Datei

# third ChoiceFormat choice
s6={0,number} Dateien

# sample date
s7=3. März 1996

Note: PropertyResourceBundle can be constructed either from an InputStream or a Reader, which represents a property file. Constructing a PropertyResourceBundle instance from an InputStream requires that the input stream be encoded in ISO-8859-1. In that case, characters that cannot be represented in ISO-8859-1 encoding must be represented by Unicode Escapes, whereas the other constructor which takes a Reader does not have that limitation.

see
ResourceBundle
see
ListResourceBundle
see
Properties
since
JDK1.1

Fields Summary
private Map
lookup
Constructors Summary
public PropertyResourceBundle(InputStream stream)
Creates a property resource bundle from an {@link java.io.InputStream InputStream}. The property file read with this constructor must be encoded in ISO-8859-1.

param
stream an InputStream that represents a property file to read from.
throws
IOException if an I/O error occurs
throws
NullPointerException if stream is null

        Properties properties = new Properties();
        properties.load(stream);
        lookup = new HashMap(properties);
    
public PropertyResourceBundle(Reader reader)
Creates a property resource bundle from a {@link java.io.Reader Reader}. Unlike the constructor {@link #PropertyResourceBundle(java.io.InputStream) PropertyResourceBundle(InputStream)}, there is no limitation as to the encoding of the input property file.

param
reader a Reader that represents a property file to read from.
throws
IOException if an I/O error occurs
throws
NullPointerException if reader is null
since
1.6

        Properties properties = new Properties();
        properties.load(reader);
        lookup = new HashMap(properties);
    
Methods Summary
public java.util.EnumerationgetKeys()
Returns an Enumeration of the keys contained in this ResourceBundle and its parent bundles.

return
an Enumeration of the keys contained in this ResourceBundle and its parent bundles.
see
#keySet()

        ResourceBundle parent = this.parent;
        return new ResourceBundleEnumeration(lookup.keySet(),
                (parent != null) ? parent.getKeys() : null);
    
public java.lang.ObjecthandleGetObject(java.lang.String key)

        if (key == null) {
            throw new NullPointerException();
        }
        return lookup.get(key);
    
protected java.util.SethandleKeySet()
Returns a Set of the keys contained only in this ResourceBundle.

return
a Set of the keys contained only in this ResourceBundle
since
1.6
see
#keySet()

	return lookup.keySet();