# File lib/inifile.rb, line 105
  def write( opts = {} )
    filename = opts.fetch(:filename, @filename)
    encoding = opts.fetch(:encoding, @encoding)
    mode = (RUBY_VERSION >= '1.9' && encoding) ?
         "w:#{encoding.to_s}" :
         'w'

    File.open(filename, mode) do |f|
      @ini.each do |section,hash|
        f.puts "[#{section}]"
        hash.each {|param,val| f.puts "#{param} #{@param} #{escape_value val}"}
        f.puts
      end
    end

    self
  end