Java™ Platform
Standard Ed. 6

java.util
Class PropertyResourceBundle

java.lang.Object
  extended by java.util.ResourceBundle
      extended by java.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 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 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.

Since:
JDK1.1
See Also:
ResourceBundle, ListResourceBundle, Properties

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.ResourceBundle
ResourceBundle.Control
 
Field Summary
 
Fields inherited from class java.util.ResourceBundle
parent
 
Constructor Summary
PropertyResourceBundle(InputStream stream)
          Creates a property resource bundle from an InputStream.
PropertyResourceBundle(Reader reader)
          Creates a property resource bundle from a Reader.
 
Method Summary
 Enumeration<String> getKeys()
          Returns an Enumeration of the keys contained in this ResourceBundle and its parent bundles.
 Object handleGetObject(String key)
          Gets an object for the given key from this resource bundle.
protected  Set<String> handleKeySet()
          Returns a Set of the keys contained only in this ResourceBundle.
 
Methods inherited from class java.util.ResourceBundle
clearCache, clearCache, containsKey, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getLocale, getObject, getString, getStringArray, keySet, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PropertyResourceBundle

public PropertyResourceBundle(InputStream stream)
                       throws IOException
Creates a property resource bundle from an InputStream. The property file read with this constructor must be encoded in ISO-8859-1.

Parameters:
stream - an InputStream that represents a property file to read from.
Throws:
IOException - if an I/O error occurs
NullPointerException - if stream is null

PropertyResourceBundle

public PropertyResourceBundle(Reader reader)
                       throws IOException
Creates a property resource bundle from a Reader. Unlike the constructor PropertyResourceBundle(InputStream), there is no limitation as to the encoding of the input property file.

Parameters:
reader - a Reader that represents a property file to read from.
Throws:
IOException - if an I/O error occurs
NullPointerException - if reader is null
Since:
1.6
Method Detail

handleGetObject

public Object handleGetObject(String key)
Description copied from class: ResourceBundle
Gets an object for the given key from this resource bundle. Returns null if this resource bundle does not contain an object for the given key.

Specified by:
handleGetObject in class ResourceBundle
Parameters:
key - the key for the desired object
Returns:
the object for the given key, or null

getKeys

public Enumeration<String> getKeys()
Returns an Enumeration of the keys contained in this ResourceBundle and its parent bundles.

Specified by:
getKeys in class ResourceBundle
Returns:
an Enumeration of the keys contained in this ResourceBundle and its parent bundles.
See Also:
ResourceBundle.keySet()

handleKeySet

protected Set<String> handleKeySet()
Returns a Set of the keys contained only in this ResourceBundle.

Overrides:
handleKeySet in class ResourceBundle
Returns:
a Set of the keys contained only in this ResourceBundle
Since:
1.6
See Also:
ResourceBundle.keySet()

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.