使用ruby将charset设置为文件

时间:2014-02-28 10:52:14

标签: ruby file encoding character-encoding

我尝试将文件写入utf-8字符集文件。当我做的时候

    File.open("#{POST_XML_PATH}/#{filename}", 'w:utf-8) { |f| f.write(my_xml.to_xml) }

我得到文件 - 我的application / xml;字符集= US-ASCII

如何将字符集更改为utf-8?我还尝试在my_xml var

上创建一个.encode('utf-8)

谢谢

编辑:

my_xml = Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |xml|
xml.Envelope(xmlns: 'http://test.com') {
xml.FileInfos {
  xml.FileID id
  xml.FileDate current_time.try(:strftime, '%Y%m%d')
  xml.FileTime current_time.try(:strftime, '%H%M%S')
  xml.Customer {
    xml.Number '123456'
    xml.Name1 "Name1"
    xml.Street "Street 1"
    xml.ZIP "1000"
    xml.City "Geneve"
    xml.Country "CH"
  }
}
}

File.open("#{POST_XML_PATH}/#{filename}", 'w') { |f| f.write(my_xml.to_xml) }

如果我添加'Genève',字符集是UTF-8,那么如果需要,ruby会确定charset。但我总是想要utf-8

0 个答案:

没有答案