Ir al contenido principal

Escribir

Escribe en un archivo de texto.

Estructura

Write( [var F: Text; ] P1 [ , P2,..., Pn] );

Parámetros

Descripción

La función «Write» escribe uno o varios valores en un archivo de texto. F, si se especifica, es una variable de archivo de texto. Si se omite F, se utiliza la variable de archivo estándar «Output». Cada P es un parámetro de escritura. Cada parámetro de escritura incluye una expresión de salida cuyo valor se va a escribir en el archivo. Un parámetro de escritura también puede incluir las especificaciones relativas a la anchura del campo y al número de decimales. Cada expresión de salida debe ser de tipo Char, de uno de los tipos enteros (Byte, Shortint, Word, Longint, Cardinal), de uno de los tipos de punto flotante (Single, Real, Double, Extended, Currency), de uno de los tipos de cadena (PChar, AnsiString, ShortString), una cadena empaquetada o de uno de los tipos booleanos (Boolean, Bool).

Un parámetro de escritura tiene la forma

OutExpr [: MinWidth [: DecPlaces ] ]

donde OutExpr es una expresión de salida. MinWidth y DecPlaces son expresiones de tipo entero.

MinWidth especifica el ancho mínimo del campo, que debe ser superior a 0. Se escriben exactamente MinWidth caracteres (añadiendo espacios al principio si es necesario), salvo cuando OutExpr tiene un valor que debe representarse con más de MinWidth caracteres. En ese caso, se escriben los caracteres necesarios para representar el valor de OutExpr. Del mismo modo, si se omite MinWidth, se escriben los caracteres necesarios para representar el valor de OutExpr.

DecPlaces especifica el número de decimales en una representación de punto fijo de uno de los tipos Real. Solo se puede especificar si OutExpr es de uno de los tipos Real y si también se ha especificado MinWidth. Cuando se especifica MinWidth, este valor debe ser mayor o igual a 0.

Escribir con un valor de tipo carácter:

Si se omite MinWidth, se escribe en el archivo el valor de tipo carácter de OutExpr. De lo contrario, se escribe «MinWidth - 1» espacios seguidos del valor del carácter de «OutExpr».

Escribe uno de los valores de tipo entero:

Si se omite MinWidth, la representación decimal de OutExpr se escribe en el archivo sin espacios en blanco delante. Si se especifica MinWidth y su valor es mayor que la longitud de la cadena decimal, se insertan suficientes espacios en blanco antes de la cadena decimal para que el ancho del campo sea igual a MinWidth.

Escribe uno de los valores de tipo real:

Si OutExpr tiene uno de los valores de tipo real, su representación decimal se escribe en el archivo. El formato de la representación depende de la presencia o ausencia de DecPlaces.

Si se omite DecPlaces (o si está presente pero tiene un valor negativo), se escribe una cadena decimal en formato de punto flotante. Si tampoco se especifica MinWidth, se toma por defecto un valor de 17; de lo contrario, si MinWidth es inferior a 8, se toma por defecto un valor de 8. El formato de la cadena de punto flotante es

[ | - ] <digit>. <decimales> E [ + | - ] <exponente>

En la siguiente tabla se enumeran los componentes de la cadena de salida.

Componente Significado

[ | - ] « » o «-», según el signo de OutExpr

<dígito> Un solo dígito; «0» solo si OutExpr es 0

<decimales> Cadena de dígitos de MinWidth-7 (pero como máximo 10) dígitos

El carácter «E» mayúscula

[ + | - ] Según el signo del exponente

<exponente> Exponente decimal de dos dígitos

Si DecPlaces está presente, se escribe una cadena decimal de punto fijo. Si DecPlaces es mayor que 11, se considera que es 11. El formato de la cadena de punto fijo es el siguiente:

[ <espacios en blanco> ] [ - ] <dígitos> [ . <decimales>]

En la siguiente tabla se enumeran los componentes de la cadena de punto fijo.

Componente Significado

[ <espacios en blanco> ] Espacios en blanco para cumplir con MinWidth

[ - ] Si OutExpr es negativo

<dígitos> Al menos un dígito, pero sin ceros a la izquierda

[ . <decimales> ] Decimales si DecPlaces > 0

Escribe uno de los valores de tipo cadena:

Si se omite MinWidth, el valor de cadena de OutExpr se escribe en el archivo sin espacios al principio. Si se especifica MinWidth y su valor es mayor que la longitud de OutExpr, se insertan suficientes espacios en blanco antes de la cadena decimal para que el ancho del campo sea igual a MinWidth.

Escribir con un valor de tipo cadena empaquetada:

Si OutExpr es de tipo cadena empaquetada, el efecto es el mismo que escribir una cadena cuya longitud sea igual al número de elementos del tipo de cadena empaquetada.

Escribe uno de los valores de tipo booleano:

Si OutExpr es de tipo booleano, el efecto es el mismo que escribir las cadenas «True» o «False», dependiendo del valor de OutExpr.

Nota

Al utilizar la función «Write», el archivo debe estar abierto para la escritura. |