Skip to content

Instantly share code, notes, and snippets.

@bkenny
Created August 21, 2013 12:58
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save bkenny/6294133 to your computer and use it in GitHub Desktop.
Save bkenny/6294133 to your computer and use it in GitHub Desktop.
Quickly encode a file in ruby to base64
require 'base64'
# Open the file you wish to encode
data = File.open('/Users/bkenny/Desktop/d3cce16ee41411e296c022000a1f980f_101.mp4').read
# Encode the puppy
encoded = Base64.encode64(data)
# Spit it out into one continous string
puts encoded.gsub(/\n/,"")
@pvin
Copy link

pvin commented Dec 22, 2017

Hi @bkenny thanks for the Base64.encoding script.
a. How I do Base64.decoding? meaning again the mp4 video from encoded string.

@pvin
Copy link

pvin commented Dec 22, 2017

Sorry got it.
File.open("/home/folder_name/file_name.mp4", "wb") do |file|
file.write(Base64.decode64(encoded))
end

@mcansky
Copy link

mcansky commented Mar 3, 2020

thanks

@calmerwaters
Copy link

You could just use the following, to save the last step:

require 'base64'

# Open the file you wish to encode
data = File.open('/Users/bkenny/Desktop/d3cce16ee41411e296c022000a1f980f_101.mp4').read

# Encode the puppy
encoded = Base64.strict_encode64(data)

See reference for strict_encode64 https://ruby-doc.org/stdlib-2.4.1/libdoc/base64/rdoc/Base64.html#method-i-strict_encode64

Note: this means no new lines are added ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment