Spec-Zone.ru › OpenJDK 24

Класс PropertyResourceBundle

java.lang.Object
java.util.ResourceBundle
java.util.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, должны быть представлены с помощью Unicode-экранов, как определено в разделе 3.3 Спецификации языка Java, в то время как другой конструктор, принимающий Reader, не имеет этого ограничения. Другие значения кодирования игнорируются для этой системной переменной. Системная переменная считывается и оценивается при инициализации этого класса. Изменение или удаление свойства не имеет никакого эффекта после инициализации.
Требования к реализации:
Реализация подкласса PropertyResourceBundle должна быть потокобезопасной, если она одновременно используется несколькими потоками. По умолчанию реализация не абстрактных методов в этом классе потокобезопасна.
С:
1.1
См. также:
  • ResourceBundle
  • ListResourceBundle
  • Properties

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе java.util.ResourceBundle

ResourceBundle.Control

Краткое описание полей

Поля, объявленные в классе java.util.ResourceBundle

parent

Краткое описание конструкторов

Конструктор Описание
PropertyResourceBundle(InputStream stream)
Создаёт пакет ресурсов свойств из InputStream.
PropertyResourceBundle(Reader reader)
Создаёт пакет ресурсов свойств из Reader.

Краткое описание методов

Модификатор и тип Метод Описание
Enumeration<String> getKeys()
Возвращает Enumeration ключей, содержащихся в этом ResourceBundle и его родительских пакетах.
Object handleGetObject(String key)
Получает объект для заданного ключа из этого ресурсного пакета.
protected Set<String> handleKeySet()
Возвращает Set ключей, содержащихся только в этом ResourceBundle.

Методы, объявленные в классе java.util.ResourceBundle

clearCache, clearCache, containsKey, getBaseBundleName, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getLocale, getObject, getString, getStringArray, keySet, setParent

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

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 содержит некорректную последовательность 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 получена некорректная последовательность Unicode.
С тех пор как:
1.6

Подробное описание методов

handleGetObject

public Object handleGetObject(String key)
Описание, скопированное из класса: ResourceBundle
Получает объект для заданного ключа из этого ресурсного пула. Возвращает null, если в этом ресурсном пуле нет объекта для заданного ключа.
Определено в:
handleGetObject в классе ResourceBundle
Параметры:
key - ключ для желаемого объекта
Возвращает:
объект для заданного ключа или null

getKeys

public Enumeration<String> getKeys()
Возвращает Enumeration ключей, содержащихся в этом ResourceBundle и его родительских пулах.
Определено в:
getKeys в классе ResourceBundle
Возвращает:
Enumeration ключей, содержащихся в этом ResourceBundle и его родительских пулах.
См. также:
  • ResourceBundle.keySet()

handleKeySet

protected Set<String> handleKeySet()
Возвращает Set ключей, содержащихся только в этом ResourceBundle.
Переопределяет:
handleKeySet в классе ResourceBundle
Возвращает:
Set ключей, содержащихся только в этом ResourceBundle
С тех пор как:
1.6
См. также:
  • ResourceBundle.keySet()

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/PropertyResourceBundle.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API