编程学习biancheng.45soft.com 本站提供了各种在线教程和资料,供大家学习与参考.
编程学习
当前位置: 主页 > Perl > 数组和散列 > Perl 数组和散列 保存数据结构

Perl 数组和散列 保存数据结构

如果你想保存你的数据结构以便以后用于其他程序,那么你有很多方法可以用。最简单的方法就是使用 Perl 的 Data::Dumper 模块,它把一个(可能是自参考的)数据结构变成一个字串,你可以把这个字串保存在程序外部,以后用 eval 或者 do 重新组成:

use Data::Dumper;
$Data::Dumper::Purity = 1;          # 因为 %TV 是自参考的
open (FILE, "> tvinfo.perldata")    or die "can't open tvinfo: $!";
print FILE Data::Dumper->Dump([\%TV], ['*TV']);
close FILE                          or die "can't close tvinfo: $!";

其他的程序(或者同一个程序)可以稍后从文件里把它读回来:

open (FILE, "< tvinfo.perldata")   or die "can't open tvinfo: $!";
undef $/;            # 一次把整个文件读取进来
eval ;               # 重新创建 %TV
die "can't recreate tv data from tvinfo.perldata: $@" if $@;
close FILE           or die "can't close tvinfo: $!";
print $TV{simpsons}{members}[2]{age};

或者简单的是:

do "tvinfo.perldata"      or die "can't recreate tvinfo: $! $@";
print $TV{simpsons}{members}[2]{age};

还有许多其他的解决方法可以用,它们的存储格式的范围从打包的二进制(非常快)到 XML(互换性非常好)。检查一下靠近你的 CPAN 镜象!



编程学习 Perl 数组和散列 保存数据结构 转载请保留此行.谢谢.

Perl