2011-01-19 11 views
3

私はPerlとYAMLをかなり使い慣れています。私はYAMLファイルから読み込み、設定ファイル全体を書き換えずにプロパティ値の一部を編集/書き出したい(既存のコメント、空白行、空白などを保存する)PerlでのYAMLドキュメントの編集

私はPerlでYAMLライブラリを使用している。これを達成するための良い方法は何でしょうか?

答えて

2

ファイルの一部を簡単に書き込むことはできません。ファイル全体を書き直すことになります。部分的なファイルを作成した場合は、開始位置を探して、その長さにファイルを切り捨て(または切り詰めてからseek/append)し、変更のない開始後にファイルの新しい末尾を書き込む必要があります。ファイルシステムは、 'オフセット193で329バイトを削除し、オフセット227後に46バイトを挿入する'などの操作をサポートしていません。

あなたのYAMLモジュール(ライブラリ)が先行のコメントと空白行をどうにかして保存したり、利用できるようにしておくと、簡単に保存できます。そうでなければ、おそらくあなた自身が仕事をしなければならないでしょう - コメント行を読み込んで保存し、次にYAMLを使ってファイルを解析し、保存されたコメントとYAMLを書き換えます。

+0

ああ、ありがとう。ありがとう。あなたはタイプミスの鋭い目を持っている! :) –

関連する問題