Spec-Zone.ru › OpenJDK 17

Класс 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 Note:
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, не имеет этого ограничения. Другие значения кодирования игнорируются для этой системной переменной. Системная переменная читается и оценивается при инициализации этого класса. Изменение или удаление свойства не имеет эффекта после инициализации.
Implementation Requirements:
Реализация подкласса PropertyResourceBundle должна быть потокобезопасной, если она используется одновременно несколькими потоками. По умолчанию реализации неабстрактных методов в этом классе являются потокобезопасными.
Since:
1.1
See Also:
  • 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 - поток ввода, представляющий файл свойств для чтения.
Исключения:
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 - объект чтения, представляющий файл свойств для чтения.
Исключения:
IOException - если произошла ошибка ввода-вывода
NullPointerException - если reader равно null
IllegalArgumentException - если появляется некорректная последовательность Unicode-эскейпа из reader.
С:
1.6

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

handleGetObject

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

getKeys

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

handleKeySet

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

© 1993, 2021, 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://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/PropertyResourceBundle.html

Spec-Zone.ru

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