Ruby 1.9.3 を使用しており、別のプログラムによって生成された YAML ファイルを解析する必要があります。Ruby YAML パーサーが を認識できないようです%YAML:1.0
。これは、YAML バージョンの単なる指標です。
これは私の YAML ファイルです:
%YAML:1.0
task_name: "1000022_es-2013-03-19-12-00-00_1_90000_s1.vtsk"
worker_name: "1000022_es-2013-03-19-12-00-00_1_90000_s1.vtsk"
left_labels: !!opencv-matrix
rows: 8
cols: 1
dt: f
data: [ 8., 6., 2., 7., 8., 4., 10., 4. ]
right_labels: !!opencv-matrix
rows: 8
cols: 1
dt: f
data: [ 14., 6., 12., 7., 7., 4., 5., 1. ]
left_features: !!opencv-matrix
rows: 8
cols: 2
dt: f
data: [ 4692611., 12., 2.81733875e+06, 12., 2.99522725e+06, 12.,
4.00128050e+06, 12., 3.84592175e+06, 12., 2006966., 12.,
4.47367050e+06, 12., 9.56887875e+05, 0. ]
right_features: !!opencv-matrix
rows: 8
cols: 2
dt: f
data: [ 4692611., 12., 2.81733875e+06, 12., 2.99522725e+06, 12.,
4.00128050e+06, 12., 3.84592175e+06, 12., 2006966., 12.,
4.47367050e+06, 12., 9.56887875e+05, 0. ]
そして私がするとき:
require 'yaml'
Psych.load(File.read('myfile.yaml'))
次のエラーが表示されます。
Psych::SyntaxError: (): 行 0 列 5 で YAML を解析できませんでした
ファイルから削除する%YAML:1.0
と、すべて問題ありません。