我正在使用YAML将Ruby哈希写入文件。
散列包含字符串作为键和浮点数作为值。
当我的字符串只包含字母时,它们会如此输出到文件中:
当一个字符串以空格开头时,它将按原样输出:
File.open(output_file, "w") {|file| file.puts YAML::dump(final)}
散列包含字符串作为键和浮点数作为值。
当我的字符串只包含字母时,它们会如此输出到文件中:
abc: 1.0
bcd: 1.0
cde: 1.0
当一个字符串以空格开头时,它将按原样输出:
! ' ab': 1.0
我重新读取文件后一切正常,但我想知道为什么会发生这种情况以及它的含义。
我查阅了YAML文档,其中提到单个感叹号用于表示本地数据类型。
为什么在以空格开头的字符串上会出现这种情况?
!
是不必要的,这样加载的内容与没有!
时完全相同。 - marcus erronius