モジュール java.base
パッケージ java.util

クラスBase64.Encoder

  • 含まれているクラス:
    Base64

    public static class Base64.Encoder
    extends Object
    このクラスは、RFC 4648およびRFC 2045に指定されているBase64エンコーディング・スキームを使用してバイト・データをエンコードするためのエンコーダを実装します。

    Base64.Encoderクラスのインスタンスは、複数のスレッドで並行して使用できます。

    特に指定がないかぎり、null引数をこのクラスのメソッドに渡すと、NullPointerExceptionがスローされます。

    導入されたバージョン:
    1.8
    関連項目:
    Base64.Decoder
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      byte[] encode​(byte[] src)
      Base64エンコーディング・スキームを使用して、指定されたバイト配列からのすべてのバイトをエンコードし、新しく割り当てられたバイト配列に書き込みます。
      int encode​(byte[] src, byte[] dst)
      Base64エンコーディング・スキームを使用して、指定されたバイト配列からのすべてのバイトをエンコードし、結果となるバイトを指定された出力バイト配列のオフセット0から書き込みます。
      ByteBuffer encode​(ByteBuffer buffer)
      Base64エンコーディング方式を使用して、指定されたByteBufferからの残りのすべてのバイトを新しく割り当てられたByteBufferにエンコードします。
      String encodeToString​(byte[] src)
      Base64エンコーディング・スキームを使用して、指定されたバイト配列をStringにエンコードします。
      Base64.Encoder withoutPadding()
      これと同じ方法だが、エンコードされたバイト・データの末尾にパディング文字を追加せずにエンコードするエンコーダ・インスタンスを返します。
      OutputStream wrap​(OutputStream os)
      Base64エンコーディング・スキームを使用してバイト・データをエンコードするための出力ストリームをラップします。
    • メソッドの詳細

      • encode

        public byte[] encode​(byte[] src)
        Base64エンコーディング・スキームを使用して、指定されたバイト配列からのすべてのバイトをエンコードし、新しく割り当てられたバイト配列に書き込みます。 返されるバイト配列の長さは、結果となるバイトの長さになります。
        パラメータ:
        src - エンコードするバイト配列
        戻り値:
        結果となるエンコードされたバイトを格納する、新しく割り当てられたバイト配列。
      • encode

        public int encode​(byte[] src,
                          byte[] dst)
        Base64エンコーディング・スキームを使用して、指定されたバイト配列からのすべてのバイトをエンコードし、結果となるバイトを指定された出力バイト配列のオフセット0から書き込みます。

        出力バイト配列dstに、入力バイト配列からのすべてのバイトをエンコードできるだけの十分な領域があることを確認するのは、このメソッドの呼出し側の責任です。 出力バイト配列に十分な大きさがない場合、その出力バイト配列にバイトは書き込まれません。

        パラメータ:
        src - エンコードするバイト配列
        dst - 出力バイト配列
        戻り値:
        出力バイト配列に書き込まれるバイト数
        例外:
        IllegalArgumentException - dstに、すべての入力バイトをエンコードできるだけの十分な領域がない場合。
      • encodeToString

        public String encodeToString​(byte[] src)
        Base64エンコーディング・スキームを使用して、指定されたバイト配列をStringにエンコードします。

        このメソッドはまず、すべての入力バイトをエンコードして、base64でエンコードされたバイト配列に格納し、次にそのエンコードされたバイト配列およびISO-8859-1文字セットを使用して新しいStringを構築します。

        つまり、このメソッドの呼出しには、new String(encode(src), StandardCharsets.ISO_8859_1)を呼び出すのとまったく同じ効果があります。

        パラメータ:
        src - エンコードするバイト配列
        戻り値:
        結果となるBase64でエンコードされた文字を格納するString
      • encode

        public ByteBuffer encode​(ByteBuffer buffer)
        Base64エンコーディング方式を使用して、指定されたByteBufferからの残りのすべてのバイトを新しく割り当てられたByteBufferにエンコードします。 復帰時に、ソース・バッファの位置はそのリミットに更新されますが、リミットは変更されません。 返される出力バッファの位置はゼロになり、そのリミットは結果となるエンコードされたバイトの数になります。
        パラメータ:
        buffer - エンコードするソースByteBuffer
        戻り値:
        エンコードされたバイトを格納する、新しく割り当てられたバイト・バッファ。
      • wrap

        public OutputStream wrap​(OutputStream os)
        Base64エンコーディング・スキームを使用してバイト・データをエンコードするための出力ストリームをラップします。

        使用後は返された出力ストリームをただちに閉じることをお薦めします。使用中は、残りのすべてのバイトがベースとなる出力ストリームにフラッシュされます。 返された出力ストリームを閉じると、ベースとなる出力ストリームが閉じます。

        パラメータ:
        os - 出力ストリーム。
        戻り値:
        バイト・データをエンコードして指定されたBase64エンコード形式にするための出力ストリーム
      • withoutPadding

        public Base64.Encoder withoutPadding()
        これと同じ方法だが、エンコードされたバイト・データの末尾にパディング文字を追加せずにエンコードするエンコーダ・インスタンスを返します。

        このエンコーダ・インスタンスのエンコーディング・スキームは、この呼出しの影響を受けません。 返されたエンコーダ・インスタンスは、パディングのないエンコード操作に使用するようにしてください。

        戻り値:
        末尾にパディング文字を追加しないでエンコードする同等のエンコーダ