メインコンテンツへスキップ

base64encode 関数

base64encode は、文字列に Base64 エンコードを適用します。

OpenTofu は、RFC 4648 のセクション 4 で定義されている「標準」の Base64 アルファベットを使用します。

OpenTofu 言語の文字列はバイトではなく Unicode 文字のシーケンスであるため、この関数はまず文字列の文字を UTF-8 としてエンコードし、次に結果に Base64 エンコードを適用します。

OpenTofu 言語はすべての文字列に Unicode 正規化を適用するため、base64decode を通してから base64encode を通すと、元の結果と完全に一致するとは限りません。

OpenTofu 言語で大規模な生のバイナリデータを操作することはお勧めしませんが、Base64 エンコードは任意のバイトシーケンスを表す標準的な方法であり、バイナリデータを受け入れるか返すリソースタイプは Base64 自体を使用するため、この関数は主に Base64 バイトを予期するリソースタイプに文字列データを簡単に提供できるようにするために存在します。

base64encode は、事実上、エンコーディング名を UTF-8 に設定して textencodebase64 を呼び出すための短縮形です。

コードブロック
> base64encode("Hello World")
SGVsbG8gV29ybGQ=
  • base64decode は、Base64 データをデコードし、それを UTF-8 文字列として解釈する逆の操作を実行します。
  • textencodebase64 は、UTF-8 以外の文字エンコーディングをサポートするより一般的な関数です。
  • base64gzip は、文字列に gzip 圧縮を適用し、その結果を Base64 エンコードですべて 1 つの操作で返します。
  • filebase64 は、ローカルファイルシステムからファイルを読み取り、中間 Unicode 文字列を作成せずに、その生のバイトを Base64 エンコードで返します。