为了解决YAML 不兼容的问题,我正在尝试用 Ruby 编写命令行脚本。问题在于我对 Ruby 完全不熟悉。
所以我制作了以下脚本:
require 'json'
require 'yaml'
thing = YAML.load('---
author_id:
- 0
- 1
subject:
- ""
- !binary |
0KHQtNC10LvQsNGC0Ywg0LPRgNCw0LzQvtGC0L3Ri9C5INCy0L3QtdGI0L3Q
uNC5INCy0LjQtCDQtNC70Y8g0LjQvNC10Y7RidC10LPQvtGB0Y8=
')
puts thing.to_json
# puts thing['subject'][1].to_json # Issues the same error
现在我得到了yaml2json.rb:15:in
encode': "\xD0" from ASCII-8BIT to UTF-8 (Encoding::UndefinedConversionError)`
如何让它认为解码的 base64 是 UTF-8?通常我不知道一个键的确切名称,subject
只是一个例子。