代码之家  ›  专栏  ›  技术社区  ›  Matteo Riva

如何在Perl中处理配置文件?

  •  4
  • Matteo Riva  · 技术社区  · 14 年前

    label:domain:username:password:path
    

    当然,行数可能是无限的。

    1 回复  |  直到 14 年前
        1
  •  5
  •   Community Jaime Torres    7 年前

    如果你想 改变 格式,请看这里的建议:

    How do you manage configuration files in Perl?

    现有的 格式,这种格式看起来更像是逗号分隔的文件,而不是“配置”文件,所以我建议使用Text::CSV(它允许您在构造函数中选择分隔符,因此您可以使用冒号分隔而不是逗号分隔),或者对于非常大的文件Text::CSV\XS。

    use Text::CSV; # Example adapted from POD
    
    my @rows;
    my $csv = Text::CSV->new ( { sep_char => ":" } )  
                 or die "Cannot use CSV: ".Text::CSV->error_diag ();
    
    open my $fh, "<:encoding(utf8)", "test.conf" or die "test.conf: $!";
    while ( my $row = $csv->getline( $fh ) ) {
        push @rows, $row; # $row is arrayref containing your fields
    }
    $csv->eof or $csv->error_diag();
    close $fh;