Perl语言提供了一种产生简单报告和图表的机制。功能format()用于计算输出图片的状态,而功能write()用于实际输出所产生的结果。
字符串包括了一个序列行,每行包括以下三个内容:
一个图片字符串定义了单个输出行的格式;
一个论点字符串定义了哪个变量可以被前面图片格式所代替;
一个注释(例如,第一列中的#)。
当你要终止一个字符串格式的时候,只需要另起一行并使用一个句号就可以了。
与文件关联的格式的默认名字是和处理的名字是一致的(如:处理FOO的字符串格式名字就是FOO)。每一页的标题的默认名称格式与处理名字加上_TOP是一致的(如:处理BAR的头文件格式应该是BAR_TOP)。
这里有一个含有简单字符串格式的例子:
format STDOUT_TOP =
Inventory Report
Page @>>
$%
Item
| Quantity | Price |
Extended
=====================+==========+========+==========
.
format STDOUT =
@<<<<<<<<<<<<<<<<<<<
| @>>>>>>> | @##.## | @####.##
$item,
$qty, $price, $qty*$price
.
要使用这些字符串格式来产生报告,只需要设置变量,然后调用write(),就像下面这个例子所表示的一样:
@inventory=(
{name=>"Candy
bar", cnt=>5, cost=>1.55},
{name=>"Milk,
2%", cnt=>27, cost=>2.59},
{name=>"Bread",
cnt=>18, cost=>.99},
{name=>"Hot
dogs", cnt=>162, cost=>2.00},
);
for (@inventory)
{
$item = $_->;
$qty = $_->;
$price = $_->;
write;
}
责任编辑:李宁
欢迎评论或投稿
|