Q. 文字列を Base64 にエンコードしたりデコードしたりするのってどーやるの?
A. つ Convert
文字列を Base64 でエンコードする場合
Convert.ToBase64String() を使えばいいらしいんだけど、文字列をそのまま入れることはできないらしい。
byte 配列を入れろーって書いてあるけど、 string じゃ char 配列にしかならないよ〜〜。
心配ご無用!
Encoding で char 配列を byte 配列にエンコードすればいいんだっ。
例では UTF8 でキメてるけど、多分 Default なのかな〜。
string encoded_text = Convert.ToBase64String( Encoding.UTF8.GetBytes( text.ToCharArray() ) Base64FormattingOptions.None );
Base64 でエンコードされた文字列をデコードする場合
デコードでは Convert.FromBase64String() を使えばいいんだ。
でも、返ってくるのは byte 配列。
ちょっと泣いちゃうね。
でもやっぱり心配しなくてもだいじょーぶっ。
byte 配列から文字列をデコードしてくれる Encoding#GetString() を使えば文字列がでてくるよっ。
byte[] decoded_bytes = Convert.FromBase64String( encoded_text ); string decoded_text = Encoding.UTF8.GetString( decoded_bytes, 0, decoded_bytes.Length );