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

クラスBase64.Encoder

java.lang.Object
java.util.Base64.Encoder
含まれているクラス:
Base64

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

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

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

必要なサイズのエンコードされたバイト出力を割り当てることができない場合、このクラスのエンコード・メソッドによってOutOfMemoryErrorがスローされます。

導入されたバージョン:
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エンコーディング・スキームを使用してバイト・データをエンコードするための出力ストリームをラップします。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • メソッドの詳細

    • 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()
      これと同じ方法だが、エンコードされたバイト・データの末尾にパディング文字を追加せずにエンコードするエンコーダ・インスタンスを返します。

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

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