BASE64でエンコード・デコードするには (base64) 2014/09/27
各プログラミング言語でのBASE64エンコードまたはデコードする方法。
Go言語 2015/02/01
BASE64にエンコードするには encoding/base64
パッケージの base64.StdEncoding.Encode
または base64.StdEncoding.EncodeToString
を使う。
base64.StdEncoding.Encode
での例
package main
import "os"
import "encoding/base64"
func main() {
src := []byte("あいうえおかきくけこ")
dst := make([]byte, base64.StdEncoding.EncodedLen(len(src)))
base64.StdEncoding.Encode(dst, src)
os.Stdout.Write(dst)
// => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
}
base64.StdEncoding.EncodeToString
での例
package main
import "fmt"
import "encoding/base64"
func main() {
src := []byte("あいうえおかきくけこ")
dst := base64.StdEncoding.EncodeToString(src)
fmt.Printf(dst)
// => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
}
どちらもどんなに長くなっても途中で改行を入れることはないみたい。
PHP 2014/12/02
echo base64_encode("あいうえおかきくけこ");
// => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
echo base64_decode("44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT");
// => あいうえおかきくけこ
base64_encode
はどんなに長くなっても途中で改行を入れることはないみたい。
Python 2014/10/04
python2 の場合の例
import base64
# エンコード
print base64.encodestring(u"あいうえおかきくけこ".encode("utf8")).decode("ascii")
# => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
# この書き方でもできる
print "あいうえおかきくけこ".encode("base64")
# デコード
print base64.decodestring("44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT")
# => あいうえおかきくけこ
python3 の場合の例
import base64
print(base64.encodestring("あいうえおかきくけこ".encode("utf8")).decode("ascii"))
# => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
# python3では encode("base64") ではできない
print(base64.decodestring("44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT".encode("ascii")).decode("utf8"))
# => あいうえおかきくけこ
Perl 2014/12/02
MIME::Base64
を使う。
use utf8;
use Encode qw/decode_utf8 encode_utf8/;
use MIME::Base64;
my $encoded = encode_base64(encode_utf8("あいうえおかきくけこ"));
print($encoded);
# => 44GC44GE44GG44GI44GK44GL44GN44GP44GR44GT
my $decoded = decode_base64($encoded);
print($decoded . "\n");
# => あいうえおかきくけこ
encode_base64
に2つ目の引数として空文字列を渡すと、長くなっても改行されなくなる。
MIME::Base64
| perldoc.jp
http://perldoc.jp/docs/modules/MIME-Base64-2.12/Base64.pod
sh (シェルスクリプト) 2014/10/04
base64
コマンド参照。