问题描述
我想使用多个.ini文件来存储值集,以便稍后在我重新运行脚本时(例如,在重启后)使用。我正在尝试编写代码,使其首先检查特定的.ini文件是否存在,如果存在,则读取值,但如果不存在,则创建它(脚本随后将继续在其中存储值)。
if (-f '/path/to/file.ini') { # if file exists
# read file into object
my $ini = Config::IniFiles->new(-file => '/path/to/file.ini',-nomultiline => 1,-fallback => 'parameters',-commentchar => ';'
);
} else {
# create first instance of ini file
WriteConfig('/path/to/file.ini');
}
很显然,我不知道如何使用Config::InFiles
,因为它在WriteConfig('/path/to/file.ini');
上一直失败。
我可以使用此模块创建文件,还是必须以其他方式进行处理?
解决方法
WriteConfig
是一个对象方法,将被称为$ini->WriteConfig(...);
这将创建一个新文件:
use warnings;
use strict;
use Config::IniFiles;
my $ini = Config::IniFiles->new();
$ini->AddSection('section1');
$ini->newval('section1','param1',123);
$ini->WriteConfig('./file.ini');
文件file.ini
现在包含:
[section1]
param1=123