Base64 Encoding in C#

C#でBase64エンコーディングを行う場合、System.Convertクラスを利用する。

Convert string to Base64String

文字列からBase64エンコーディングされた文字列を取得する場合は、Convert.ToBase64Stringメソッドを用いる。 ただし、入力がbyte[]なので、入力文字列のエンコードがUTF8であれば、Encoding.GetBytesを用いて、stringbyte[]に変換してやる。

// inputが入力文字列
var bytes = System.Text.Encoding.UTF8.GetBytes(input);
// resultにBase64エンコーディングされた文字列が格納される
var result = System.Convert.ToBase64String(bytes);

Convert Base64String to string

Base64エンコーディングされた文字列をデコードするには、Convert.FromBase64Stringメソッドを用いる。 出力がbyte[]なので、stringで受け取りたい場合は、Encoding.GetStringを用いて、bytes[]stringに変換する。

// Base64エンコーディングされた文字列をデコードし、`byte[]`として受け取る
// inputが、Base64エンコーディングされた文字列
var bytes = System.Convert.FromBase64String(input);
// stringに変換
var result = System.Text.Encoding.UTF8.GetString(bytes);

Reference