DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

Formato de cadena en C#

0

 

Formato de cadena

La forma más común de formatear cadenas es usando string.Format(). En C#, el método de formato de cadena se usa para insertar el valor de la variable o un objeto o expresión en otra cadena. Al usar el método string.Format, podemos reemplazar los elementos de formato en la cadena especificada con la representación de cadena de los objetos especificados.

var msg = string.Format("There are {0} balls", 3);

Otra forma en que podemos formatear una cadena es usar el StringBuilder.AppendFormat()

decimal num = 34.53567325m; 
var builder = new StringBuilder(); 
builder.AppendFormat("Format Decimal: {0:n2}", num);

Y la tercera forma de formatear una cadena es usando:

Console.WriteLine("There are {0} balls", 3);

En .NET 4.6 se agrega un nuevo tipo llamado FormattableString, que consiste en la cadena de formato a la que se le pasaría string.Format (e.g. "Hello, {0}");y los argumentos que se le pasarían para formatearlo. Fundamentalmente, esta información se captura antes de formatear. Esto le permite ajustar el formato de forma adecuada, más comúnmente para realizarlo en la referencia cultural invariable, a menudo con el Invariant staticmétodo. Por ejemplo:

FormattableString y = $"FormattableString: It is now {DateTime.UtcNow}";
Console.WriteLine(FormattableString.Invariant(y)); 
// Result: FormattableString: It is now 03/18/2021 10:40:45

 

Especificadores de formato

Aquí hay una referencia rápida a todos los especificadores de conversión admitidos.

 

 

Formatos de números

PERSONAJE

DESCRIPCIÓN

USO

EJEMPLO

C

Divisa

{0:c}

$ 55.674,74

mi

Científico

{0:e}

5.567474e+004

F

Punto fijo

{0:f}

55674.74

gramo

General

{0: g}

55674.73789621

norte

Separador de mil

{0:n}

55.674,74

Formatos personalizados

PERSONAJE

DESCRIPCIÓN

USO

EJEMPLO

0

Marcador de posición cero

{0:00.00}

55674.74

#

Marcador de posición de dígito

{0:(#).##}

(55674).74

.

Punto decimal

{0:0.000}

55674.738

,

Separador de mil

{0:0,0}

55,675

%

Por ciento

{0:0%}

5567474%

Formatos de fecha y hora

PERSONAJE

DESCRIPCIÓN

USO

EJEMPLO

d

Cita corta

{0:d}

19-03-2021

D

Fecha larga

{0:D}

19 marzo 2021

t

Poco tiempo

{0:t}

06:49:20

T

Largo tiempo

{0:T}

06:49:20

f o f

Hora de fecha larga

{0:f}

19 marzo 2021 06:49:00

g o g

Hora de fecha corta

{0: g}

19-03-2021 06:49:44

METRO

Cita corta

{0:M}

19 de Marzo

r

RFC1123 Cadena de fecha y hora

{0:r}

jueves, 19 de marzo de 2021 06:49:22 GMT

s

Ordenable Fecha/Hora

{0: s}

2021-03-19T06:49:11

tu

Fecha ordenable universal

{0:u}

2021-03-19 06:49:49Z

tu

Fecha completa universal

{0:T}

19 marzo 2021 00:18:55

Y

patrón año mes

{0:Y}

marzo, 2021

Índice de formato de cadena

Un índice de argumento de cadena se especifica como un número {}y su posición.

string.Format("There are {0} balls and {1} rackets", 3, 5); // result: There are 3 balls and 5 rackets

Formateo de datos numéricos

Con {0:D}podemos formatear números en formato decimal.

string.Format("Number: {0:N}", 157); // result: 157,00

 

También podemos escribir así:

string.Format("{0:D}  {1,6:D}", 634, 868); // result: 634     868

 

El {0:D}elemento de formato especifica el primer elemento de la lista de objetos suministrados que se tomarán y se formatearán en formato decimal. El {1,6:D}elemento de formato toma el segundo elemento, formatéelo también como decimal y la longitud de la cadena será de 6 caracteres. Debido a que el número tiene solo tres caracteres, se alinea a la derecha y se rellena con cadenas vacías.

También podemos formatear un número en otras notaciones, como científica, monetaria, porcentual y hexadecimal:

string.Format("Scientific: {0:E}", 157); // result: 1.570000E+002 
string.Format("Currency: {0:C}", 157); // result for US locale: $157.00 
string.Format("Percent: {0:P}", 157); // result: 15,700.00% 
string.Format("Hexadecimal: {0:X}", 157); // result: 9D

 

Además, podemos tener alineaciones de formato, que representan un número mínimo de caracteres para escribir en la salida. Por ejemplo, {0,10}con alineación a la derecha y alineación a la izquierda, necesitamos especificar una longitud negativa, como {0,-10}:

string.Format("{0,10}", 1); 
// result:          1

 

DEMOSTRACIÓN


El resultado en la consola



Tal vez te interesen estas entradas

No hay comentarios