base64

base64でファイルを転送しようと思っているのでちょっと調べる

#!/usr/bin/env ruby
require 'base64'

total_bin = 0
total_enc = 0

ARGV.each{|file|
  puts "--- #{file}"
  bin = File.open(file).read
  puts "binary => #{bin.size}"
  total_bin += bin.size
  
  enc = Base64.encode64(bin)
  puts "encoded => #{enc.size}"
  total_enc += enc.size
  
  ratio = enc.size.to_f/bin.size
  puts "ratio : #{ratio}"
}

puts "total ratio : #{total_enc.to_f/total_bin}"

概ね1.35555969305469倍とか1.35555902696417倍とかぐらいの倍率になる