formato de salida el formato [Perl]

gramática


format FORMATNAME =
fieldline
value1, value2, value3
fieldline
value1, value2, value3
.
 
=pod
FORMATNAME :格式化模板名称
fieldline  :一个格式行,用来定义一个输出行的格式,以@或^开头
value1..    : 数据行,向前面一个格式行插入变量value
.          :结束符号


sintaxis de línea de formato

  • O que comienzan con @ ^
  • @, Abierto ^ <,>, | determina la longitud del campo de longitud, si la variable excede se truncará la longitud definida
  • <,>, | También representan alineado a la izquierda, alineado a la derecha, centrada
  • ^ Para múltiples líneas de llenado de texto

formato de rango

@ ### ### representa un número fijo de precisión, un total de ocho caracteres Zifu de ancho, cuatro antes del punto decimal, la parte posterior 3


Formato de la variable

$ ~ ($ FORMAT_NAME): el nombre del formato actual

el formato de la cabecera actual: $ ^ ($ FORMAT_TOP_NAME)

$ = ($ FORMAT_LINES_PER_PAGE): el número de líneas por página

$ | ($ FORMAT_AUTOFLUSH): ya sea para eliminar automáticamente la memoria búfer de salida

$% ($ FORMAT_PAGE_NUMBER): Establecer página


El formato por defecto

    El formato por defecto es STDOUT, cambie el identificador de archivo de salida con selecto, recordar y escribir con el uso.


ejemplo

#!/usr/bin/perl -w

   format STUDENT =
   ==========================
   @<<<<<<<<<<<<< @<<<<<<<<<<
   $name, $score
   ==========================
   .
   
   format STUDENT_TOP =
   ==========================
   Name           Score
   ==========================
   .
 
   @stuName = ('hunk', 'jack', 'lucy');
   @stuScore = (80, 70 , 60);
  
   if(open(STUDENT, ">tmp")){
      #select(HANDLE);
      $~ = STUDENT;    #指定格式名字
      $^ = STUDENT_TOP;#指定表頭格式
      $i = 0;
      foreach (@stuName){
          $name = $_;
          $score = $stuScore[$i++];
          write STUDENT;
      }
      close STUDENT;
  }

  resultado:

==========================
Name           Score
==========================
==========================
hunk           80
==========================
==========================
jack           70
==========================
==========================
lucy           60
==========================


 

Publicado 89 artículos originales · ganado elogios 17 · Vistas a 40000 +

Supongo que te gusta

Origin blog.csdn.net/lbt_dvshare/article/details/90545727
Recomendado
Clasificación