printf FILEHANDLE FORMAT,LIST
printf FORMAT,LIST
例如:
printf函数先格式化字符串再输出到指定文件或当前缺省文件中,如:
printf OUTFILE (“You owe me %8.2f",$owing); 此语句取出变量$owing的值并替换掉串中的%8.2f,%8.2f是域格式的例子,把$owing的值看作浮点数。
使用 printf 格式化输出
printf 函数有一个模板,叫格式字符串,它可以规定输出的格式,每个格式符有百分号开头,由字母结束。
格式化字符串中有 3 个格式符,则对应 3 个元素
%d 十进制整数 %x 十六进制 %o 八进制 根据需要截尾
%f or %s 限制宽度 其中正数是右对齐,负数是左对齐
%s 是针对字符串的,如 %10s,%-15s
% f 针对数字的,如 %12.3f ( 表示输出共 12 个字符,包括小数点,并且小数点后面只有 3 位数 )
%% 输出百分号,不会使用后面列表中的元素
下面看一个对齐输出的例子:
#!/usr/bin/perl use warnings; use strict; my @arr; while(<DATA>){ chomp; @arr=split; printf "%-50s%-20s/n",$arr[0],$arr[1]; print "===================/n"; } __DATA__ PRODUCT:NLSRTL VERSION:10.2.0.1.0 STATUS:Production PRODUCT:OracleDatabase10gEnterpriseEdition VERSION:10.2.0.1.0 STATUS:Prod PRODUCT:PL/sql VERSION:10.2.0.1.0 STATUS:Production PRODUCT:TNSforLinux: VERSION:10.2.0.1.0 STATUS:Production 输出: PRODUCT:NLSRTL VERSION:10.2.0.1.0 =================== PRODUCT:OracleDatabase10gEnterpriseEdition VERSION:10.2.0.1.0 =================== PRODUCT:PL/sql VERSION:10.2.0.1.0 =================== PRODUCT:TNSforLinux: VERSION:10.2.0.1.0 =================== 可能看着不齐,实际是右对齐!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。