クラスCharsetProvider

java.lang.Object
java.nio.charset.spi.CharsetProvider

public abstract class CharsetProvider extends Object
文字セット・サービス・プロバイダ・クラスです。

charsetプロバイダは、このクラスの具象サブクラスで、引数がゼロのコンストラクタと、いくつかの関連するCharset実装クラスがあります。 文字セット・プロバイダは、アプリケーション・モジュール・パスまたはアプリケーション・クラス・パスにデプロイされます。 検索するには、文字セット・プロバイダをsystem class loaderに表示する必要があります。 charsetプロバイダをモジュールまたはクラス・パスとしてデプロイする方法の詳細は、Deploying Service Providersを参照してください。

モジュールにデプロイされた文字セット・プロバイダの場合、モジュール宣言にprovidesディレクティブを指定する必要があります。 providesディレクティブは、サービスとサービス・プロバイダの両方を指定します。 この場合、サービスはjava.nio.charset.spi.CharsetProviderです。

たとえば、モジュールとしてデプロイされた文字セット・プロバイダでは、次のディレクティブを指定できます:

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

クラス・パスにデプロイされた文字セット・プロバイダの場合、リソース・ディレクトリMETA-INF/services java.nio.charset.spi.CharsetProviderという名前のプロバイダ構成ファイルで自身が識別されます。 このファイルには、具象文字セット・プロバイダ・クラスの完全指定名が1行に1つずつ記述されます。 行は、行フィード ('\n')、キャリッジ・リターン ('\r')のいずれか、またはキャリッジ・リターンと直後の行送りで終了します。 それぞれの名前を囲む空白文字とタブ文字、および空白行は無視されます。 コメント文字は'#' ('\u0023')です。各行で、最初のコメント文字に続くすべての文字は無視されます。 ファイルはUTF-8で符号化されている必要があります。

特定の具象文字セット・プロバイダ・クラスが複数の構成ファイル内、または同じ構成ファイル内で繰返し指定されている場合、重複した指定は無視されます。 特定のプロバイダを指定した構成ファイルを、プロバイダ自体と同じJARファイル(またはその他の配布単位)内に含める必要はありません。 このプロバイダには、構成ファイルの検索時に最初に照会されたクラス・ローダーからアクセスできなければいけません。なお、そのクラス・ローダーは、ファイルをロードしたクラス・ローダーと同一であるとは限りません。

導入されたバージョン:
1.4
関連項目:
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    新しい文字セット・プロバイダを初期化します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    abstract Charset
    charsetForName(String charsetName)
    指定された文字セット名に対する文字セットを取得します。
    abstract Iterator<Charset>
    このプロバイダがサポートする文字セットに対するイテレータを作成します。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • CharsetProvider

      protected CharsetProvider()
      新しい文字セット・プロバイダを初期化します。
  • メソッドの詳細

    • charsets

      public abstract Iterator<Charset> charsets()
      このプロバイダがサポートする文字セットに対するイテレータを作成します。 このメソッドは、Charset.availableCharsetsメソッドの実装に使用されます。
      戻り値:
      新しいイテレータ
    • charsetForName

      public abstract Charset charsetForName(String charsetName)
      指定された文字セット名に対する文字セットを取得します。
      パラメータ:
      charsetName - 要求された文字セットの名前。正規名か別名
      戻り値:
      指定された文字セット用の文字セット・オブジェクト、または指定された文字セットがこのプロバイダでサポートされていない場合はnull