Descripción detallada de la función de formato en Delphi
Analizar: Devuelve el carácter de formato de la variable num. Hay 10 dígitos enteros y 4 dígitos después del punto decimal.
Por ejemplo: num = 1234567890.123456, la cadena procesada es "123457890.6438 0234".
La función de formato devuelve caracteres en el formato especificado.
Formato de función (formato constante: cadena; argumentos const: matriz const): cadena
Instrucciones específicas:
Constfromat: cadena: información de formato
p>Parámetro constante: matriz.
La razón principal es que la información de formato es problemática.
La información formateada se compone principalmente de los siguientes elementos:
" " [Índice":"] ["-"] [Ancho] ["." Resumen] Tipo
Las funciones de formatear la información se resumen a continuación:
Format(' x=d ', [12]). //'x=12' //El formato
más común (' x=3d ', [12]). //'x= 12' //Especifica el ancho.
Formato(' x=f ', [12.0]). //'x=12.00' //Número de coma flotante
Formato (' x=.3f ', [12.0]); //'x=12.000' //Especifica un decimal.
Formato (' x = 8.2f '[12.0])//' x = 12.00 ';
Formato (' x=.*f ', [5, 12.0]) ; //'x=12.00000' //Configuración dinámica
Formato (' x=.5d ', [12]); //'x=00012' //, comenzando con 0.
Formato('x=.5x',[12]); //'x=0000C' //Hexadecimal
Formato('x=1:d0: d ', [12, 13]); //'x=1312' //Usar índice
Formato('x=p ', [nil]); //'x=00000000' // puntero p>
Formato (' x=1.1e ', [12.0]); //'x=1.2E 001' //Notación científica
Formato (' x= ', []); //'x=' // Obtener " "
S := Format('sd ', [S, I]); //S := S str point(I);
Explicación detallada de la información de formato:
Índice ":"] ¿Cómo expresar esto? Veamos un ejemplo.
Formato ('Esto es d d ', [12, 13]);
El índice de la primera d es 0, el índice de la segunda d es 1, por lo que el carácter es Se muestra así: Esto es 12 13.
Si lo defines así:
Format('This is 1:d 0:d',[12,13]);
Entonces el devuelto La cadena se convierte en esto es 13 12. ¿Lo entiendes ahora? El índice en [index ":"] indica el orden en que aparecen los argumentos en Args. Si este es el caso,
El formato (' d d d 0: d d ', [1, 2, 3, 4])
devolverá 1 2 3 1 2.
Si deseas devolver 1 2 3 1 4, debes decidir lo siguiente:
Formato (' d d d 0: d 3: d ', [1, 2, 3, 4])
Sin embargo, debe tenerse en cuenta que el índice no puede exceder el número en Args, de lo contrario causará excepciones, como
Formato ('Esto es 2:d 0 :d', [12, 13]);
Dado que solo hay 12 13 números en Args, el índice solo puede ser 0 o 1, de los cuales 2 es incorrecto. [ancho] especifica el ancho del valor que se va a formatear, como se desprende claramente del ejemplo.
Format('This is 4d',[12]);
El resultado es: Esto es 12, relativamente fácil, pero no tiene ningún efecto si el valor de Ancho es menor que la duración del argumento.
Por ejemplo:
Formato ('Esto es 1d ', [12]);
El resultado es: Esto es 12.
["-"]Este parámetro especificado está alineado a la izquierda y se usa en combinación con [ancho] para ver el mejor efecto:
Formato ('Esto es -4d, es' ,[12]);
El resultado es: Esto es 12, sí.
["."prec] especifica la precisión más adecuada para números de punto flotante:
Format('This is .2f', [' 1.1234]);
La salida es 1,12.
Formato('Esto es .7f ',[' 1.1234]);
La salida es 1.1234000.
Para los números enteros, si el número de dígitos en prec, como el número entero, es pequeño, no hay ningún impacto. Por el contrario, si es mayor que el número de dígitos del valor entero, se suma 0 delante del valor entero.
Formato ('Esto es .7d ', [1234]);
El resultado es: Esto es 0001234]
Para el tipo de carácter, es exactamente lo mismo que el valor entero. Por el contrario, si la longitud de prec es mayor que el tipo de cadena, no hay ningún efecto; de lo contrario, los caracteres finales se truncarán.
Format('Esto es .2s ', [' 1234 ']);
La salida es 12, el ejemplo mencionado anteriormente:
Format(' Esto es e ', [-2.22]);
Lo que se devuelve es: esto es -2.22000000000000E 000. Cómo eliminar el 0 extra, esto servirá.
Formato('Esto es .2e', [-2.22]);