我有一个ruby脚本,它使用YAML来序列化一个字符串数组,然后像这样反序列化它们:
@cache[url_key] = YAML.dump(website_data)
output_array = YAML.load(@cache[url_key])
返回的数组缺少一些字符,我认为换行字符如wc
所示231 423 6340 website_data
230 423 6241 output_array
我对stackoverflow的读取表明这可能是一个编码问题。 I.E. YAML.dump编码与YAML.load编码不同,但我看到的stackoverflow上的所有解决方案都涉及rails,这只是一个没有rails的ruby脚本。
编辑1 - 我尝试将编码添加到文件的第二行,但这不起作用。 ruby脚本的前两行看起来像
#!/usr/bin/env ruby
# encoding: ascii-8bit
有没有人知道如何在ruby中设置YAML的编码类型?