0

Config::IniFiles モジュールに、"解析プロセス全体が失敗しない方法で囲まれた複数行の値を処理するように指示することは可能ですか? このような ini ファイルを処理する必要があり、残念ながらその内容を変更することはできません。

これはそれがどのように見えるかです

198 revive.msg.fm.email2= "
199 text text text
200 some more text
201 even more text
202
203 and some more"

ファイルを解析しようとしています

 20 my $cfg_file = Config::IniFiles->new(
 21         -file => '/path/to/config_test.ini',
 22 ) || die Dumper \@Config::IniFiles::errors;

私にくれます

$VAR1 = [
    'Line 199 in file /home/zzzpetscript/config_test.ini is mal-formed:
    text text text',
    ...
];

を見ていましたが、解析する必要があるiniファイルを変更する権限がないため、ファイルに挿入できない-allowcontinue 0|1末尾の でのみ機能します。\

4

1 に答える 1

2

CPANのドキュメントには次のように書かれています:

UNIX の「ヒア ドキュメント」構文では、複数行または複数値のパラメータを定義することもできます。

Parameter=<<EOT
value/line 1
value/line 2
EOT

「EOT」の代わりに任意の文字列を使用できます。「<<」に続くものと、テキストの最後に表示されるものは、末尾の空白を含めて正確に一致する必要があることに注意してください。

または、構成オプション (デフォルトはオフ) として、継続行を許可できます。

[Section]
Parameter=this parameter \
  spreads across \
  a few lines

それらのいずれかを試しましたか?(何か他のものをごまかすのはおそらく大変な作業です....)

于 2013-09-03T13:23:22.090 に答える