Spec-Zone.ru › OpenJDK 24

Класс CharsetProvider

java.lang.Object
java.nio.charset.spi.CharsetProvider
public abstract class CharsetProvider extends Object
Класс-поставщик сервиса кодировок.

Поставщик кодировок — это конкретный подкласс этого класса, имеющий конструктор без аргументов и некоторое количество связанных Charset реализующих классов. Поставщики кодировок развертываются в пути модуля приложения или пути класса приложения. Для поиска поставщики кодировок должны быть видны system class loader. Подробнее о развертывании поставщика кодировок как модуля или в пути класса см. Deploying Service Providers.

Для поставщика кодировок, развернутого в модуле, в декларации модуля должна быть указана директива provides. Директива provides указывает как сам сервис, так и его поставщика. В этом случае, сервис — java.nio.charset.spi.CharsetProvider.

Например, поставщик кодировок, развернутый как модуль, может указать следующую директиву:


     provides java.nio.charset.spi.CharsetProvider with com.example.ExternalCharsetProvider;
 

Для поставщика кодировок, развернутого в пути класса, он идентифицирует себя с помощью файла конфигурации поставщика, названного java.nio.charset.spi.CharsetProvider в каталоге ресурсов META-INF/services. Файл должен содержать список полных имён классов конкретных поставщиков кодировок, по одному на строку. Строка завершается символом новой строки ('\n'), символом возврата каретки ('\r') или символом возврата каретки, за которым сразу следует символ новой строки. Пробелы и табуляции вокруг каждого имени, а также пустые строки игнорируются. Символ комментария — это '#' ('\u0023'); все символы после первого символа комментария в каждой строке игнорируются. Файл должен быть закодирован в UTF-8.

Если конкретный класс поставщика кодировок указан более чем в одном файле конфигурации или указан в том же файле конфигурации более чем один раз, то дубликаты будут проигнорированы. Файл конфигурации, в котором указан конкретный поставщик, не обязательно должен находиться в одном JAR-файле или другом дистрибутиве с самим поставщиком. Поставщик должен быть доступен из того же загрузчика классов, который был изначально запрошен для поиска файла конфигурации; это не обязательно тот загрузчик классов, который загрузил файл.

С:
1.4
См. также:
  • Charset

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

CharsetProvider()
Модификатор Конструктор Описание
protected
Инициализирует новый поставщик кодировок.

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

Модификатор и тип Метод Описание
abstract Charset charsetForName(String charsetName)
Возвращает кодировку для данного имени кодировки.
abstract Iterator<Charset> charsets()
Создаёт итератор, перебирающий кодировки, поддерживаемые этим поставщиком.

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

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

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

CharsetProvider

protected CharsetProvider()
Инициализирует новый поставщик кодировок.

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

charsets

public abstract Iterator<Charset> charsets()
Создаёт итератор, перебирающий кодировки, поддерживаемые этим поставщиком. Этот метод используется в реализации метода Charset.availableCharsets.
Возвращает:
Новый итератор

charsetForName

public abstract Charset charsetForName(String charsetName)
Возвращает кодировку для данного имени кодировки.
Параметры:
charsetName - Имя запрашиваемой кодировки; может быть либо каноническим именем, либо псевдонимом
Возвращает:
Объект кодировки для заданной кодировки или null, если заданная кодировка не поддерживается этим поставщиком

© 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/nio/charset/spi/CharsetProvider.html

Spec-Zone.ru

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