chinese lang failed in SaltedHashLogin


I'm using SaltedHashLogin, it works well.

now, I want to switch language to be Chinese, so I edit a new yaml in
utf-8 with all
Chinese value inside.

Then I encouter "Rails application failed to start properly" problem
when start...

In the server.log, the error info is:
../lib/localization.rb:55:in `iconv': "\xe4\xb8\xad\xe6\x96\x87"

And the code for this is:
  def self.load_localized_strings
    # Load language files
    Dir[RAILS_ROOT + '/lang/*.yaml'].each do |filename|
      filename =~ /(([a-z]+_?)+)\.yaml$/
      hash = YAML::load(
      file_charset = hash['file_charset'] || 'ascii'
      lang = $1

      # convert string keys to symbols
      symbol_hash =[:web_charset], file_charset) do |i|
        hash.each do |key, value|
          symbol_hash[key.to_sym] = i.iconv(value)
          if key =~ /^active_record_errors_(.*)/
            ActiveRecord::Errors.default_error_messages[$1.to_sym] =

      LOCALIZED_STRINGS[lang] = symbol_hash

any one have any idea?
my lang file is saved in utf-8 format.

Thanks there,