Класс PropertyResourceBundle
public class PropertyResourceBundle extends ResourceBundle
PropertyResourceBundle — конкретный подкласс ResourceBundle, который управляет ресурсами для локали с помощью набора статических строк из файла свойств. Дополнительные сведения о пакетах ресурсов см. в разделе ResourceBundle. В отличие от других типов пакетов ресурсов, вы не создаёте подкласс PropertyResourceBundle. Вместо этого предоставляются файлы свойств, содержащие данные ресурсов. ResourceBundle.getBundle автоматически найдёт подходящий файл свойств и создаст PropertyResourceBundle, ссылающийся на него. Полное описание стратегии поиска и создания экземпляров см. в разделе ResourceBundle.getBundle.
В следующем примере показан элемент семейства пакетов ресурсов с базовым именем "MyResources". Текст определяет пакет "MyResources_de", немецкий элемент семейства пакетов. Этот элемент основан на PropertyResourceBundle, поэтому текст является содержимым файла "MyResources_de.properties" (связанный пример показывает, как добавить в это семейство пакеты, реализованные в виде подклассов ListResourceBundle). В этом примере используются ключи вида "s1" и т. д. Фактические ключи выбираются вами, но они должны совпадать с ключами, используемыми в программе для получения объектов из пакета. Ключи чувствительны к регистру.
# 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
- Примечание к API:
-
PropertyResourceBundleможно создать изInputStreamилиReader, представляющего файл свойств. Для создания экземпляраPropertyResourceBundleизInputStreamнеобходимо, чтобы входной поток был закодирован вUTF-8. По умолчанию, если при чтении входного потока возникаетMalformedInputExceptionилиUnmappableCharacterException, экземплярPropertyResourceBundleвозвращается в состояние, предшествовавшее исключению, входной поток повторно считывается вISO-8859-1, после чего чтение продолжается. Если системное свойствоjava.util.PropertyResourceBundle.encodingзадано значением "ISO-8859-1" или "UTF-8", входной поток считывается только в этой кодировке, а при обнаружении недопустимой последовательности возникает исключение. Если указано "ISO-8859-1", символы, которые нельзя представить в кодировке ISO-8859-1, должны быть представлены с помощью escape-последовательностей Unicode, определённых в разделе §3.3 Спецификации языка Java. Для другого конструктора, принимающегоReader, такого ограничения нет. Другие значения кодировки для этого системного свойства игнорируются. Системное свойство считывается и обрабатывается при инициализации этого класса. Изменение или удаление свойства после инициализации не оказывает никакого эффекта. - Требования к реализации:
- Реализация подкласса
PropertyResourceBundleдолжна быть потокобезопасной, если она одновременно используется несколькими потоками. Реализации неабстрактных методов этого класса по умолчанию являются потокобезопасными. - С момента:
- 1.1
- См. также:
Краткое описание вложенных классов
Вложенные классы и интерфейсы, объявленные в классе ResourceBundle
ResourceBundle.Control | Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
ResourceBundle.Control |
ResourceBundle.Control определяет набор методов обратного вызова, которые вызываются фабричными методами ResourceBundle.getBundle в процессе загрузки пакета. |
Краткое описание полей
Поля, объявленные в классе ResourceBundle
parent | Модификатор и тип | Поле | Описание |
|---|---|---|
protected ResourceBundle |
parent |
Родительский пакет этого пакета. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PropertyResourceBundle |
Создаёт пакет ресурсов свойств из InputStream. |
PropertyResourceBundle |
Создаёт пакет ресурсов свойств из Reader. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Enumeration |
getKeys() |
Возвращает Enumeration ключей, содержащихся в этом ResourceBundle и его родительских пакетах. |
Object |
handleGetObject |
Получает объект для указанного ключа из этого пакета ресурсов. |
protected Set |
handleKeySet() |
Возвращает Set ключей, содержащихся только в этом ResourceBundle. |
Методы, объявленные в классе ResourceBundle
clearCache, clearCache, containsKey, getBaseBundleName, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getLocale, getObject, getString, getStringArray, keySet, setParent | Модификатор и тип | Метод | Описание |
|---|---|---|
static final void |
clearCache() |
Удаляет из кэша все пакеты ресурсов, загруженные модулем вызывающего кода. |
static final void |
clearCache |
Удаляет из кэша все пакеты ресурсов, загруженные указанным загрузчиком классов. |
boolean |
containsKey |
Определяет, содержится ли указанный key в этом ResourceBundle или его родительских пакетах. |
String |
getBaseBundleName() |
Возвращает базовое имя этого пакета, если оно известно, или null, если оно неизвестно. |
static final ResourceBundle |
getBundle |
Получает пакет ресурсов, используя указанное базовое имя, локаль по умолчанию и модуль вызывающего кода. |
static ResourceBundle |
getBundle |
Получает пакет ресурсов, используя указанное базовое имя и локаль по умолчанию от имени указанного модуля. |
static final ResourceBundle |
getBundle |
Получает пакет ресурсов, используя указанное базовое имя и локаль, а также модуль вызывающего кода. |
static ResourceBundle |
getBundle |
Получает пакет ресурсов, используя указанное базовое имя, локаль и загрузчик классов. |
static ResourceBundle |
getBundle |
Возвращает пакет ресурсов, используя указанное базовое имя, целевую локаль, загрузчик классов и объект control. |
static ResourceBundle |
getBundle |
Получает пакет ресурсов, используя указанное базовое имя и локаль от имени указанного модуля. |
static final ResourceBundle |
getBundle |
Возвращает пакет ресурсов, используя указанное базовое имя, целевую локаль и объект control, а также загрузчик классов вызывающего кода. |
static final ResourceBundle |
getBundle |
Возвращает пакет ресурсов, используя указанное базовое имя, локаль по умолчанию и указанный объект control. |
Locale |
getLocale() |
Возвращает локаль этого пакета ресурсов. |
final Object |
getObject |
Получает объект для указанного ключа из этого пакета ресурсов или одного из его родительских пакетов. |
final String |
getString |
Получает строку для указанного ключа из этого пакета ресурсов или одного из его родительских пакетов. |
final String[] |
getStringArray |
Получает массив строк для указанного ключа из этого пакета ресурсов или одного из его родительских пакетов. |
Set |
keySet() |
Возвращает Set всех ключей, содержащихся в этом ResourceBundle и его родительских пакетах. |
protected void |
setParent |
Задаёт родительский пакет для этого пакета. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
PropertyResourceBundle
public PropertyResourceBundle(InputStream stream) throws IOException
InputStream. По умолчанию этот конструктор считывает файл свойств в кодировке UTF-8. Если при чтении входного потока возникает MalformedInputException или UnmappableCharacterException, экземпляр PropertyResourceBundle возвращается в состояние, предшествовавшее исключению, входной поток повторно считывается в ISO-8859-1, после чего чтение продолжается. Если системное свойство java.util.PropertyResourceBundle.encoding задано значением "ISO-8859-1" или "UTF-8", входной поток считывается только в этой кодировке, а при обнаружении недопустимой последовательности возникает исключение. Другие значения кодировки для этого системного свойства игнорируются. Системное свойство считывается и обрабатывается при инициализации этого класса. Изменение или удаление свойства после инициализации не оказывает никакого эффекта.- Параметры:
-
stream— InputStream, представляющий файл свойств для чтения. - Исключения:
-
IOException— если произошла ошибка ввода-вывода -
NullPointerException— еслиstreamравно null -
IllegalArgumentException— еслиstreamсодержит некорректную escape-последовательность Unicode. -
MalformedInputException— если системное свойствоjava.util.PropertyResourceBundle.encodingимеет значение "UTF-8", аstreamсодержит недопустимую последовательность байтов UTF-8. -
UnmappableCharacterException— если системное свойствоjava.util.PropertyResourceBundle.encodingимеет значение "UTF-8", аstreamсодержит несопоставимую последовательность байтов UTF-8.
PropertyResourceBundle
public PropertyResourceBundle(Reader reader) throws IOException
Reader. В отличие от конструктора PropertyResourceBundle(InputStream), для кодировки входного файла свойств нет ограничений.- Параметры:
-
reader— Reader, представляющий файл свойств для чтения. - Исключения:
-
IOException— если произошла ошибка ввода-вывода -
NullPointerException— еслиreaderравно null -
IllegalArgumentException— если при чтенииreaderвстречается некорректная escape-последовательность Unicode. - С момента:
- 1.6
Подробное описание методов
handleGetObject
public Object handleGetObject(String key)
ResourceBundle- Определён в:
-
handleGetObjectв классеResourceBundle - Параметры:
-
key— ключ нужного объекта - Возвращает:
- объект для указанного ключа или null
getKeys
public Enumeration<String> getKeys()
Enumeration ключей, содержащихся в этом ResourceBundle и его родительских пакетах.- Определён в:
-
getKeysв классеResourceBundle - Возвращает:
Enumerationключей, содержащихся в этомResourceBundleи его родительских пакетах.- См. также:
handleKeySet
protected Set<String> handleKeySet()
Set ключей, содержащихся только в этом ResourceBundle.- Переопределяет:
-
handleKeySetв классеResourceBundle - Возвращает:
Setключей, содержащихся только в этомResourceBundle- С момента:
- 1.6
- См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.