2

YAML を使用して文字列の配列をシリアル化し、次のように逆シリアル化する Ruby スクリプトがあります。

@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

私のスタックオーバーフローの読み取りは、これがエンコードの問題である可能性があることを示しています。YAML.dumpエンコーディングはYAML.loadエンコーディングとは異なりますが、私が見たstackoverflowのすべてのソリューションにはレールが含まれており、これはレールのない単なるRubyスクリプトです。


編集 1 -ファイルの 2 行目にエンコーディングを追加しようとしましたが、うまくいきませんでした。ruby スクリプトの最初の 2 行は次のようになります。

#!/usr/bin/env ruby
# encoding: ascii-8bit

RubyでYAMLのエンコーディングタイプを設定する方法を知っている人はいますか?

4

0 に答える 0