模块  java.base
软件包  java.nio.charset.spi

Class CharsetProvider


  • public abstract class CharsetProviderextends Object
    Charset服务提供者类。

    charset提供程序是此类的具体子类,具有零参数构造函数和一些关联的charset实现类。 Charset提供程序可以作为扩展安装在Java平台的实例中。 提供者也可以通过将它们添加到applet或应用程序类路径或通过其他一些特定于平台的方法来提供。 通过当前线程的context class loader查找字符集提供程序。

    charset提供程序使用资源目录META-INF/services名为java.nio.charset.spi.CharsetProvider的提供程序配置文件标识自身。 该文件应包含完全限定的具体charset-provider类名列表,每行一个。 换行符( '\n' ),回车符( '\r' )或回车符后面的任何一行都会终止一行。 每个名称周围的空格和制表符以及空行都将被忽略。 评论字符是'#''\u0023' ); 在每一行上,忽略第一个注释字符后面的所有字符。 该文件必须以UTF-8编码。

    如果特定的具体字符集提供程序类在多个配置文件中命名,或者在同一配置文件中多次命名,则将忽略重复项。 命名特定提供程序的配置文件不必与提供程序本身位于同一jar文件或其他分发单元中。 必须可以从最初查询的同一个类加载器访问提供程序以找到配置文件; 这不一定是加载文件的类加载器。

    从以下版本开始:
    1.4
    另请参见:
    Charset
    • 构造方法详细信息

      • CharsetProvider

        protected CharsetProvider()
        初始化一个新的charset提供程序。
        异常
        SecurityException - 如果已安装安全管理器且拒绝RuntimePermission ("charsetProvider")
    • 方法详细信息

      • charsets

        public abstract Iterator<Charset> charsets()
        创建一个迭代器,迭代该提供程序支持的charset。 此方法用于实现Charset.availableCharsets方法。
        结果
        新的迭代器
      • charsetForName

        public abstract Charset charsetForName​(String charsetName)
        检索给定charset名称的charset。
        参数
        charsetName - 请求的字符集的名称; 可以是规范名称或别名
        结果
        A charset object for the named charset, or null if the named charset is not supported by this provider