the join and dump method

join(string, ...) 
Returns a new string formed by joining the strings using File::SEPARATOR.

File.join("usr", "mail", "gumby")   #=> "usr/mail/gumby"
real_path = File.join Settings.real_dir, "#{real_name}.#{aaa}.apk"
dump( obj [, anIO] , limit=-1 ) → anIO 
Serializes obj and all descendant objects. If anIO is specified, the serialized data will be written to it, otherwise the data will be returned as a String. If limit is specified, the traversal of subobjects will be limited to that depth. If limit is negative, no checking of depth will be performed.
class Klass
  def initialize(str)
    @str = str
  end
  def say_hello
    @str
  end
end
o = Klass.new("hello
")
data = Marshal.dump(o)
obj = Marshal.load(data)
obj.say_hello  #=> "hello
"
原文地址:https://www.cnblogs.com/iwangzheng/p/3795216.html