Califique este contenido
Contraer todo/Expandir todo Contraer todo
Esta página es específica de
Microsoft Visual Studio 2008/.NET Framework 3.5

Hay además otras versiones disponibles para:
Biblioteca de clases de .NET Framework
DateTimeFormatInfo (Clase)

Actualización: noviembre 2007

Define el modo en que se aplica formato y se muestran los valores DateTime, dependiendo de la referencia cultural.

Espacio de nombres:  System.Globalization
Ensamblado:  mscorlib (en mscorlib.dll)
Visual Basic (Declaración)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public NotInheritable Class DateTimeFormatInfo _
    Implements ICloneable, IFormatProvider
Visual Basic (Uso)
Dim instance As DateTimeFormatInfo
C#
[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DateTimeFormatInfo : ICloneable, 
    IFormatProvider
Visual C++
[SerializableAttribute]
[ComVisibleAttribute(true)]
public ref class DateTimeFormatInfo sealed : ICloneable, 
    IFormatProvider
J#
/** @attribute SerializableAttribute */ 
/** @attribute ComVisibleAttribute(true) */
public final class DateTimeFormatInfo implements ICloneable, 
    IFormatProvider
JScript
public final class DateTimeFormatInfo implements ICloneable, IFormatProvider

Esta clase contiene información, como modelos de fecha, modelos de hora y designadores de AM/PM.

Para crear un objeto DateTimeFormatInfo para una referencia cultural específica, la aplicación crea un objeto CultureInfo para la referencia cultural y recupera la propiedad CultureInfo..::.DateTimeFormat. Para crear un objeto DateTimeFormatInfo para la referencia cultural del subproceso actual, la aplicación debe usar la propiedad CurrentInfo. Para crear un objeto DateTimeFormatInfo para una referencia cultural de todos los idiomas, la aplicación usa la propiedad InvariantInfo para una versión de sólo lectura o el constructor DateTimeFormatInfo para una versión modificable. No es posible crear un objeto DateTimeFormatInfo para una referencia cultural neutra.

El usuario puede optar por invalidar algunos de los valores asociados a la referencia cultural actual de Windows a través de de la configuración referente a las opciones de configuración regional y de idioma del Panel de control. Por ejemplo, el usuario puede mostrar la fecha en un formato diferente o utilizar una moneda diferente a la predeterminada para la referencia cultural. Si la propiedad CultureInfo..::.UseUserOverride se establece en true, las propiedades de la instancia de CultureInfo..::.DateTimeFormat, la instancia de CultureInfo..::.NumberFormat y la instancia de CultureInfo..::.TextInfo también se recuperan desde la configuración del usuario. Si la configuración del usuario no es compatible con la referencia cultural asociada a CultureInfo (por ejemplo, si el calendario seleccionado no es uno de los calendarios indicados por OptionalCalendars), no se definen los resultados de los métodos ni los valores de las propiedades.

En las versiones anteriores a la versión 2.0 de .NET Framework, si la propiedad CultureInfo..::.UseUserOverride se establece en true, el objeto sólo lee las propiedades reemplazables por el usuario cuando se obtiene acceso a cada una por primera vez. Debido a que DateTimeFormatInfo tiene más de una propiedad reemplazable por el usuario, esa "inicialización relajada" puede generar una incoherencia entre dichas propiedades cuando la aplicación tiene acceso a una propiedad, el usuario cambia a otra referencia cultural o reemplaza propiedades de la referencia cultural actual mediante de la configuración referente a las opciones de configuración regional y de idioma del Panel de control. Después, la aplicación obtiene acceso a una propiedad distinta. Por ejemplo, se puede tener acceso a LongDatePattern en una secuencia como ésta. Después, el usuario puede cambiar los modelos en el Panel de control; cuando se obtiene acceso, ShortDatePattern usa los nuevos valores. Si el usuario elige una referencia cultural distinta, en lugar de reemplazar simplemente un modelo determinado, se puede producir una incoherencia similar.

En la versión 2.0 de .NET Framework y en versiones posteriores, DateTimeFormatInfo no utiliza esta "inicialización relajada". En su lugar, lee todas las propiedades que el usuario puede reemplazar al crearse. Sigue existiendo cierta vulnerabilidad ya que ni la creación de objetos ni el proceso de invalidación por parte del usuario son atómicos y los valores correspondientes pueden cambiar a mitad del proceso de creación de objetos. Sin embargo, esta situación debe ser muy poco habitual.

Este cambio es de especial importancia en el caso de la serialización. .La versión 2.0 de .NET Framework y las versiones posteriores conservan todos los valores invalidables y no solamente aquellos a los que se tiene acceso cuando se produce la serialización.

A los valores de DateTime se les da formato mediante modelos personalizados o estándar almacenados en las propiedades de un DateTimeFormatInfo.

La aplicación puede reemplazar modelos estándar por modelos personalizados estableciendo las propiedades adjuntas de un objeto DateTimeFormatInfo en el que se pueda escribir. Para determinar si se puede escribir en un objeto DateTimeFormatInfo, la aplicación debe utilizar la propiedad IsReadOnly.

La tabla siguiente enumera los modelos de formato de DateTime estándar asociados a propiedades DateTimeFormatInfo. Para obtener más información, vea Cadenas de formato de fecha y hora estándar.

Modelo de formato

Propiedad asociada/descripción

d

ShortDatePattern

D

LongDatePattern

f

Fecha y hora completas (fecha larga y hora corta)

F

FullDateTimePattern (fecha larga y hora larga)

g

General (fecha corta y hora corta)

G

General (fecha corta y hora larga)

m, M

MonthDayPattern

o, O

Modelo de fecha y hora de ida y vuelta; con este modelo de formato, la operación de formato o de análisis siempre usa la referencia cultural de todos los idiomas

r, R

RFC1123Pattern; con este modelo de formato, la operación de formato o análisis siempre usa la referencia cultural de todos los idiomas

s

SortableDateTimePattern (se basa en ISO 8601) utilizando la hora local; con este modelo de formato, la operación de formato o análisis siempre usa la referencia cultural de todos los idiomas

t

ShortTimePattern

T

LongTimePattern

u

UniversalSortableDateTimePattern utilizando el formato para la presentación de hora universal; con este modelo de formato, la operación de formato o análisis siempre usa la referencia cultural de todos los idiomas

U

Fecha y hora completas (fecha larga y hora larga) utilizando la hora universal

y, Y

YearMonthPattern

En la tabla siguiente se muestran los modelos de formato DateTime personalizados y su funcionamiento. Para obtener más información, vea Cadenas de formato de fecha y hora personalizadas.

Modelo de formato

Descripción

d, %d

El día del mes. Los días con un solo dígito no se escriben con un cero a la izquierda. La aplicación especifica "%d" si el modelo de formato no se combina con otros modelos de formato.

dd

El día del mes. Los días con un solo dígito se escriben con un cero a la izquierda.

ddd

La abreviatura del día de la semana, como se ha definido en AbbreviatedDayNames.

dddd

El nombre completo del día de la semana, como se ha definido en DayNames.

f, %f

La fracción de un segundo con la precisión de un solo dígito. El resto de los dígitos se truncan. La aplicación especifica "%f" si el modelo de formato no se combina con otros modelos de formato.

ff

La fracción de un segundo con la precisión de dos dígitos. El resto de los dígitos se truncan.

fff

La fracción de un segundo con la precisión de tres dígitos. El resto de los dígitos se truncan.

ffff

La fracción de un segundo con la precisión de cuatro dígitos. El resto de los dígitos se truncan.

fffff

La fracción de un segundo con la precisión de cinco dígitos. El resto de los dígitos se truncan.

ffffff

La fracción de un segundo con la precisión de seis dígitos. El resto de los dígitos se truncan.

fffffff

La fracción de un segundo con la precisión de siete dígitos. El resto de los dígitos se truncan.

F, %F

Muestra el dígito más significativo de la fracción de segundos. Si el dígito es cero, no se muestra nada. La aplicación especifica "%F" si el modelo de formato no se combina con otros modelos de formato.

FF

Muestra los dos dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o dos dígitos cero.

FFF

Muestra los tres dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o tres dígitos cero.

FFFF

Muestra los cuatro dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o cuatro dígitos cero.

FFFFF

Muestra los cinco dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o cinco dígitos cero.

FFFFFF

Muestra los seis dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o seis dígitos cero.

FFFFFFF

Muestra los siete dígitos más significativos de la fracción de segundos. Sin embargo, no se muestran ceros finales o siete dígitos cero.

gg

El período o la era. Este modelo se pasa por alto si la fecha a la que se va a aplicar formato no tiene asociada una cadena de período o de era.

h, %h

La hora en un reloj de 12 horas. Las horas con un solo dígito no se escriben con un cero a la izquierda. La aplicación especifica "%h" si el modelo de formato no se combina con otros modelos de formato.

hh

La hora en un reloj de 12 horas. Las horas con un solo dígito se escriben con un cero a la izquierda.

H, %H

La hora en un reloj de 24 horas. Las horas con un solo dígito no se escriben con un cero a la izquierda. La aplicación especifica "%H" si el modelo de formato no se combina con otros modelos de formato.

HH

La hora en un reloj de 24 horas. Las horas con un solo dígito se escriben con un cero a la izquierda.

K

Distintos valores de la propiedad Kind, es decir, Local, Utc o Unspecified.

m, %m

Minutos. Los minutos con un solo dígito se escriben con un cero a la izquierda. La aplicación especifica "%m" si el modelo de formato no se combina con otros modelos de formato.

mm

Minutos. Los minutos con un solo dígito se escriben con un cero a la izquierda.

M, %M

El valor numérico del mes. Los meses con un solo dígito no se escriben con un cero a la izquierda. La aplicación especifica "%M" si el modelo de formato no se combina con otros modelos de formato.

MM

El valor numérico del mes. Los meses con un solo dígito se escriben con un cero a la izquierda.

MMM

La abreviatura del mes, como se ha definido en AbbreviatedMonthNames.

MMMM

El nombre completo del mes, como se ha definido en MonthNames.

s, %s

Segundos. Los segundos con un solo dígito se escriben con un cero a la izquierda. La aplicación especifica "%s" si el modelo de formato no se combina con otros modelos de formato.

ss

Segundos. Los segundos con un solo dígito se escriben con un cero a la izquierda.

t, %t

El primer carácter del designador AM/PM que se ha definido en AMDesignator o PMDesignator, si lo hubiera. La aplicación especifica "%t" si el modelo de formato no se combina con otros modelos de formato.

tt

El designador AM/PM que se ha definido en AMDesignator o PMDesignator, si lo hubiera. La aplicación debe utilizar este modelo de formato para los idiomas en los que sea necesario mantener la distinción entre a.m. y p.m. Un ejemplo es el japonés, en el que los designadores de a.m. y p.m. se diferencian en el segundo carácter en vez de en el primero.

y, %y

El año sin el siglo. Si el año sin el siglo es menor que 10, el año se muestra sin ceros a la izquierda. La aplicación especifica "%y" si el modelo de formato no se combina con otros modelos de formato.

yy

El año sin el siglo. Si el año sin el siglo es menor que 10, el año se muestra sin un cero a la izquierda.

yyy

El año con tres dígitos. Si el año es menor que 100, se muestra con un cero a la izquierda.

yyyy

El año con cuatro o cinco dígitos (dependiendo del calendario utilizado), incluido el siglo. Se rellena con ceros a la izquierda para obtener cuatro dígitos. Los calendarios budista tailandés y coreano tienen años de cinco dígitos. Los usuarios que seleccionen el modelo "aaaa" ven cinco dígitos sin ceros a la izquierda en los calendarios que tienen cinco dígitos. Excepción: los calendarios japonés y taiwanés siempre se comportan como si se hubiera seleccionado "aa".

yyyyy

El año con cinco dígitos. Se rellena con ceros a la izquierda para obtener cinco dígitos. Excepción: los calendarios japonés y taiwanés siempre se comportan como si se hubiera seleccionado "aa".

yyyyyy

El año con seis dígitos. Se rellena con ceros a la izquierda para obtener seis dígitos. Excepción: los calendarios japonés y taiwanés siempre se comportan como si se hubiera seleccionado "aa". El modelo se puede continuar con una cadena más larga de "a" que se rellene con más ceros a la izquierda.

z, %z

El desplazamiento de la zona horaria ("+" o "-" seguido sólo de la hora). Las horas con un solo dígito no se escriben con un cero a la izquierda. Por ejemplo, la Hora estándar del Pacífico es "-8". La aplicación especifica "%z" si el modelo de formato no se combina con otros modelos de formato.

zz

El desplazamiento de la zona horaria ("+" o "-" seguido sólo de la hora). Las horas con un solo dígito se escriben con un cero a la izquierda. Por ejemplo, la Hora estándar del Pacífico es "-08".

zzz

El desplazamiento de la zona horaria ("+" o "-" seguido de la hora y los minutos). Las horas y los minutos con un solo dígito se escriben con ceros a la izquierda. Por ejemplo, la Hora estándar del Pacífico es "-08:00".

:

El separador de hora predeterminado que se ha definido en TimeSeparator.

/

El separador de fecha predeterminado que se ha definido en DateSeparator.

% c

Donde c es un modelo de formato si se utiliza por si solo. Para utilizar el modelo de formato "d", "f", "F", "h", "m", "s", "t", "y", "z", "H" o "M" por sí solo, la aplicación especifica "%d", "%f", "%F", "%h", "%m", "%s", "%t", "%y", "%z", "%H" o "%M".

El carácter "%" puede omitirse si el modelo de formato se combina con caracteres literales u otros modelos de formato.

\ c

Donde c es cualquier carácter. Muestra el carácter literalmente. Para mostrar el carácter de barra diagonal inversa, la aplicación debe utilizar "\\".

Sólo los modelos de formato enumerados en la segunda tabla anterior se pueden utilizar para crear modelos personalizados. Los modelos de formato estándar enumerados en la primera tabla sólo se utilizan para crear modelos estándar. Los modelos personalizados tienen al menos dos caracteres de longitud, por ejemplo:

  • DateTime.ToString("d") devuelve el valor de DateTime; "d" es el modelo de fecha corto estándar.

  • DateTime.ToString("%d") devuelve el día del mes; "%d" es un modelo personalizado.

  • DateTime.ToString("d ") devuelve el día del mes seguido de un carácter de espacio en blanco; "d" es un modelo personalizado.

La aplicación puede crear un objeto DateTimeFormatInfo o un objeto NumberFormatInfo sólo para la referencia cultural de todos los idiomas o para referencias culturales específicas, no para referencias culturales neutras. Para obtener más información acerca de la referencia cultural invariable y referencias culturales neutras, vea la clase CultureInfo.

Esta clase implementa la interfaz ICloneable para habilitar la duplicación de objetos DateTimeFormatInfo. También implementa IFormatProvider para proporcionar información de formato a aplicaciones.

En el siguiente ejemplo de código se imprimen los diferentes modelos de formato para la referencia cultural en-US. También se muestra el valor de las propiedades adjuntas a los modelos de formato.

Visual Basic
Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic

Public Class SamplesDTFI

   Public Shared Sub Main()

      ' Creates and initializes a DateTimeFormatInfo associated with the en-US culture.
      Dim myDTFI As DateTimeFormatInfo = New CultureInfo("en-US", False).DateTimeFormat

      ' Creates a DateTime with the Gregorian date January 3, 2002 (year=2002, month=1, day=3).
      ' The Gregorian calendar is the default calendar for the en-US culture.
      Dim myDT As New DateTime(2002, 1, 3)

      ' Displays the format pattern associated with each format character.
      Console.WriteLine("FORMAT  en-US EXAMPLE")
      Console.WriteLine("CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY")
      Console.WriteLine()
      Console.WriteLine("  d     {0}", myDT.ToString("d", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.ShortDatePattern, "(ShortDatePattern)")
      Console.WriteLine()
      Console.WriteLine("  D     {0}", myDT.ToString("D", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.LongDatePattern, "(LongDatePattern)")
      Console.WriteLine()
      Console.WriteLine("  f     {0}", myDT.ToString("f", myDTFI))
      Console.WriteLine()
      Console.WriteLine("  F     {0}", myDT.ToString("F", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.FullDateTimePattern, "(FullDateTimePattern)")
      Console.WriteLine()
      Console.WriteLine("  g     {0}", myDT.ToString("g", myDTFI))
      Console.WriteLine()
      Console.WriteLine("  G     {0}", myDT.ToString("G", myDTFI))
      Console.WriteLine()
      Console.WriteLine("  m     {0}", myDT.ToString("m", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.MonthDayPattern, "(MonthDayPattern)")
      Console.WriteLine()
      Console.WriteLine("  M     {0}", myDT.ToString("M", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.MonthDayPattern, "(MonthDayPattern)")
      Console.WriteLine()
      Console.WriteLine("  o     {0}", myDT.ToString("o", myDTFI))
      Console.WriteLine()
      Console.WriteLine("  r     {0}", myDT.ToString("r", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.RFC1123Pattern, "(RFC1123Pattern)")
      Console.WriteLine()
      Console.WriteLine("  R     {0}", myDT.ToString("R", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.RFC1123Pattern, "(RFC1123Pattern)")
      Console.WriteLine()
      Console.WriteLine("  s     {0}", myDT.ToString("s", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.SortableDateTimePattern, "(SortableDateTimePattern)")
      Console.WriteLine()
      Console.WriteLine("  t     {0}", myDT.ToString("t", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.ShortTimePattern, "(ShortTimePattern)")
      Console.WriteLine()
      Console.WriteLine("  T     {0}", myDT.ToString("T", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.LongTimePattern, "(LongTimePattern)")
      Console.WriteLine()
      Console.WriteLine("  u     {0}", myDT.ToString("u", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.UniversalSortableDateTimePattern, "(UniversalSortableDateTimePattern)")
      Console.WriteLine()
      Console.WriteLine("  U     {0}", myDT.ToString("U", myDTFI))
      Console.WriteLine()
      Console.WriteLine("  y     {0}", myDT.ToString("y", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.YearMonthPattern, "(YearMonthPattern)")
      Console.WriteLine()
      Console.WriteLine("  Y     {0}", myDT.ToString("Y", myDTFI))
      Console.WriteLine("        {0} {1}", myDTFI.YearMonthPattern, "(YearMonthPattern)")

   End Sub 'Main 

End Class 'SamplesDTFI

'This code produces the following output.
'
'FORMAT  en-US EXAMPLE
'CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY
'
'  d     1/3/2002
'        M/d/yyyy (ShortDatePattern)
'
'  D     Thursday, January 03, 2002
'        dddd, MMMM dd, yyyy (LongDatePattern)
'
'  f     Thursday, January 03, 2002 12:00 AM
'
'  F     Thursday, January 03, 2002 12:00:00 AM
'        dddd, MMMM dd, yyyy h:mm:ss tt (FullDateTimePattern)
'
'  g     1/3/2002 12:00 AM
'
'  G     1/3/2002 12:00:00 AM
'
'  m     January 03
'        MMMM dd (MonthDayPattern)
'
'  M     January 03
'        MMMM dd (MonthDayPattern)
'
'  o     2002-01-03T00:00:00.0000000
'
'  r     Thu, 03 Jan 2002 00:00:00 GMT
'        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)
'
'  R     Thu, 03 Jan 2002 00:00:00 GMT
'        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)
'
'  s     2002-01-03T00:00:00
'        yyyy'-'MM'-'dd'T'HH':'mm':'ss (SortableDateTimePattern)
'
'  t     12:00 AM
'        h:mm tt (ShortTimePattern)
'
'  T     12:00:00 AM
'        h:mm:ss tt (LongTimePattern)
'
'  u     2002-01-03 00:00:00Z
'        yyyy'-'MM'-'dd HH':'mm':'ss'Z' (UniversalSortableDateTimePattern)
'
'  U     Thursday, January 03, 2002 8:00:00 AM
'
'  y     January, 2002
'        MMMM, yyyy (YearMonthPattern)
'
'  Y     January, 2002
'        MMMM, yyyy (YearMonthPattern)
'
C#
using System;
using System.Globalization;


public class SamplesDTFI  {

   public static void Main()  {

      // Creates and initializes a DateTimeFormatInfo associated with the en-US culture.
      DateTimeFormatInfo myDTFI = new CultureInfo( "en-US", false ).DateTimeFormat;

      // Creates a DateTime with the Gregorian date January 3, 2002 (year=2002, month=1, day=3).
      // The Gregorian calendar is the default calendar for the en-US culture.
      DateTime myDT = new DateTime( 2002, 1, 3 );

      // Displays the format pattern associated with each format character.
      Console.WriteLine( "FORMAT  en-US EXAMPLE" );
      Console.WriteLine( "CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY\n" );
      Console.WriteLine( "  d     {0}", myDT.ToString("d", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.ShortDatePattern, "(ShortDatePattern)" );
      Console.WriteLine( "  D     {0}", myDT.ToString("D", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.LongDatePattern, "(LongDatePattern)" );
      Console.WriteLine( "  f     {0}\n", myDT.ToString("f", myDTFI) );
      Console.WriteLine( "  F     {0}", myDT.ToString("F", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.FullDateTimePattern, "(FullDateTimePattern)" );
      Console.WriteLine( "  g     {0}\n", myDT.ToString("g", myDTFI) );
      Console.WriteLine( "  G     {0}\n", myDT.ToString("G", myDTFI) );
      Console.WriteLine( "  m     {0}", myDT.ToString("m", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.MonthDayPattern, "(MonthDayPattern)" );
      Console.WriteLine( "  M     {0}", myDT.ToString("M", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.MonthDayPattern, "(MonthDayPattern)" );
      Console.WriteLine( "  o     {0}\n", myDT.ToString("o", myDTFI) );
      Console.WriteLine( "  r     {0}", myDT.ToString("r", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.RFC1123Pattern, "(RFC1123Pattern)" );
      Console.WriteLine( "  R     {0}", myDT.ToString("R", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.RFC1123Pattern, "(RFC1123Pattern)" );
      Console.WriteLine( "  s     {0}", myDT.ToString("s", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.SortableDateTimePattern, "(SortableDateTimePattern)" );
      Console.WriteLine( "  t     {0}", myDT.ToString("t", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.ShortTimePattern, "(ShortTimePattern)" );
      Console.WriteLine( "  T     {0}", myDT.ToString("T", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.LongTimePattern, "(LongTimePattern)" );
      Console.WriteLine( "  u     {0}", myDT.ToString("u", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.UniversalSortableDateTimePattern, "(UniversalSortableDateTimePattern)" );
      Console.WriteLine( "  U     {0}\n", myDT.ToString("U", myDTFI) );
      Console.WriteLine( "  y     {0}", myDT.ToString("y", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.YearMonthPattern, "(YearMonthPattern)" );
      Console.WriteLine( "  Y     {0}", myDT.ToString("Y", myDTFI) );
      Console.WriteLine( "        {0} {1}\n", myDTFI.YearMonthPattern, "(YearMonthPattern)" );

   }

}

/*
This code produces the following output.

FORMAT  en-US EXAMPLE
CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY

  d     1/3/2002
        M/d/yyyy (ShortDatePattern)

  D     Thursday, January 03, 2002
        dddd, MMMM dd, yyyy (LongDatePattern)

  f     Thursday, January 03, 2002 12:00 AM

  F     Thursday, January 03, 2002 12:00:00 AM
        dddd, MMMM dd, yyyy h:mm:ss tt (FullDateTimePattern)

  g     1/3/2002 12:00 AM

  G     1/3/2002 12:00:00 AM

  m     January 03
        MMMM dd (MonthDayPattern)

  M     January 03
        MMMM dd (MonthDayPattern)

  o     2002-01-03T00:00:00.0000000

  r     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  R     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  s     2002-01-03T00:00:00
        yyyy'-'MM'-'dd'T'HH':'mm':'ss (SortableDateTimePattern)

  t     12:00 AM
        h:mm tt (ShortTimePattern)

  T     12:00:00 AM
        h:mm:ss tt (LongTimePattern)

  u     2002-01-03 00:00:00Z
        yyyy'-'MM'-'dd HH':'mm':'ss'Z' (UniversalSortableDateTimePattern)

  U     Thursday, January 03, 2002 8:00:00 AM

  y     January, 2002
        MMMM, yyyy (YearMonthPattern)

  Y     January, 2002
        MMMM, yyyy (YearMonthPattern)

*/
Visual C++
using namespace System;
using namespace System::Globalization;
int main()
{

   // Creates and initializes a DateTimeFormatInfo associated with the en-US culture.
   CultureInfo^ MyCI = gcnew CultureInfo( "en-US",false );
   DateTimeFormatInfo^ myDTFI = MyCI->DateTimeFormat;

   // Creates a DateTime with the Gregorian date January 3, 2002 (year=2002, month=1, day=3).
   // The Gregorian calendar is the default calendar for the en-US culture.
   DateTime myDT = DateTime(2002,1,3);

   // Displays the format pattern associated with each format character.
   Console::WriteLine( "FORMAT  en-US EXAMPLE" );
   Console::WriteLine( "CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY\n" );
   Console::WriteLine( "  d     {0}", myDT.ToString( "d", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->ShortDatePattern, "(ShortDatePattern)" );
   Console::WriteLine( "  D     {0}", myDT.ToString( "D", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->LongDatePattern, "(LongDatePattern)" );
   Console::WriteLine( "  f     {0}\n", myDT.ToString( "f", myDTFI ) );
   Console::WriteLine( "  F     {0}", myDT.ToString( "F", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->FullDateTimePattern, "(FullDateTimePattern)" );
   Console::WriteLine( "  g     {0}\n", myDT.ToString( "g", myDTFI ) );
   Console::WriteLine( "  G     {0}\n", myDT.ToString( "G", myDTFI ) );
   Console::WriteLine( "  m     {0}", myDT.ToString( "m", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->MonthDayPattern, "(MonthDayPattern)" );
   Console::WriteLine( "  M     {0}", myDT.ToString( "M", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->MonthDayPattern, "(MonthDayPattern)" );
   Console::WriteLine( "  o     {0}\n", myDT.ToString("o", myDTFI) );
   Console::WriteLine( "  r     {0}", myDT.ToString( "r", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->RFC1123Pattern, "(RFC1123Pattern)" );
   Console::WriteLine( "  R     {0}", myDT.ToString( "R", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->RFC1123Pattern, "(RFC1123Pattern)" );
   Console::WriteLine( "  s     {0}", myDT.ToString( "s", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->SortableDateTimePattern, "(SortableDateTimePattern)" );
   Console::WriteLine( "  t     {0}", myDT.ToString( "t", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->ShortTimePattern, "(ShortTimePattern)" );
   Console::WriteLine( "  T     {0}", myDT.ToString( "T", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->LongTimePattern, "(LongTimePattern)" );
   Console::WriteLine( "  u     {0}", myDT.ToString( "u", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->UniversalSortableDateTimePattern, "(UniversalSortableDateTimePattern)" );
   Console::WriteLine( "  U     {0}\n", myDT.ToString( "U", myDTFI ) );
   Console::WriteLine( "  y     {0}", myDT.ToString( "y", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->YearMonthPattern, "(YearMonthPattern)" );
   Console::WriteLine( "  Y     {0}", myDT.ToString( "Y", myDTFI ) );
   Console::WriteLine( "        {0} {1}\n", myDTFI->YearMonthPattern, "(YearMonthPattern)" );
}

/*
This code produces the following output.

FORMAT  en-US EXAMPLE
CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY

  d     1/3/2002
        M/d/yyyy (ShortDatePattern)

  D     Thursday, January 03, 2002
        dddd, MMMM dd, yyyy (LongDatePattern)

  f     Thursday, January 03, 2002 12:00 AM

  F     Thursday, January 03, 2002 12:00:00 AM
        dddd, MMMM dd, yyyy h:mm:ss tt (FullDateTimePattern)

  g     1/3/2002 12:00 AM

  G     1/3/2002 12:00:00 AM

  m     January 03
        MMMM dd (MonthDayPattern)

  M     January 03
        MMMM dd (MonthDayPattern)

  o     2002-01-03T00:00:00.0000000

  r     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  R     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  s     2002-01-03T00:00:00
        yyyy'-'MM'-'dd'T'HH':'mm':'ss (SortableDateTimePattern)

  t     12:00 AM
        h:mm tt (ShortTimePattern)

  T     12:00:00 AM
        h:mm:ss tt (LongTimePattern)

  u     2002-01-03 00:00:00Z
        yyyy'-'MM'-'dd HH':'mm':'ss'Z' (UniversalSortableDateTimePattern)

  U     Thursday, January 03, 2002 8:00:00 AM

  y     January, 2002
        MMMM, yyyy (YearMonthPattern)

  Y     January, 2002
        MMMM, yyyy (YearMonthPattern)

*/
J#
import System.* ;
import System.Globalization.* ;

public class SamplesDTFI
{
    public static void main(String[] args)
    {
        // Creates and initializes a DateTimeFormatInfo associated with 
        // the en-US culture.
        DateTimeFormatInfo myDTFI = 
            (new CultureInfo("en-US", false)).get_DateTimeFormat();

        // Creates a DateTime with the Gregorian date January 3, 2002 
        // (year=2002, month=1, day=3).
        // The Gregorian calendar is the default calendar for the 
        // en-US culture.
        DateTime myDT =  new DateTime(2002, 1, 3);

        // Displays the format pattern associated with each format character.
        Console.WriteLine("FORMAT  en-US EXAMPLE");
        Console.WriteLine("CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY\n");
        Console.WriteLine("  d     {0}", myDT.ToString("d", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_ShortDatePattern(),
            "(ShortDatePattern)");
        Console.WriteLine("  D     {0}", myDT.ToString("D", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_LongDatePattern(), 
            "(LongDatePattern)");
        Console.WriteLine("  f     {0}\n", myDT.ToString("f", myDTFI));
        Console.WriteLine("  F     {0}", myDT.ToString("F", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_FullDateTimePattern(),
            "(FullDateTimePattern)");
        Console.WriteLine("  g     {0}\n", myDT.ToString("g", myDTFI));
        Console.WriteLine("  G     {0}\n", myDT.ToString("G", myDTFI));
        Console.WriteLine("  m     {0}", myDT.ToString("m", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_MonthDayPattern(), 
            "(MonthDayPattern)");
        Console.WriteLine("  M     {0}", myDT.ToString("M", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_MonthDayPattern(), 
            "(MonthDayPattern)");
        Console.WriteLine("  o     {0}\n", myDT.ToString("o", myDTFI) );
        Console.WriteLine("  r     {0}", myDT.ToString("r", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_RFC1123Pattern(),
            "(RFC1123Pattern)");
        Console.WriteLine("  R     {0}", myDT.ToString("R", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_RFC1123Pattern(), 
            "(RFC1123Pattern)");
        Console.WriteLine("  s     {0}", myDT.ToString("s", myDTFI));
        Console.WriteLine("        {0} {1}\n", 
            myDTFI.get_SortableDateTimePattern(), "(SortableDateTimePattern)");
        Console.WriteLine("  t     {0}", myDT.ToString("t", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_ShortTimePattern(),
            "(ShortTimePattern)");
        Console.WriteLine("  T     {0}", myDT.ToString("T", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_LongTimePattern(), 
            "(LongTimePattern)");
        Console.WriteLine("  u     {0}", myDT.ToString("u", myDTFI));
        Console.WriteLine("        {0} {1}\n", 
            myDTFI.get_UniversalSortableDateTimePattern(), 
            "(UniversalSortableDateTimePattern)");
        Console.WriteLine("  U     {0}\n", myDT.ToString("U", myDTFI));
        Console.WriteLine("  y     {0}", myDT.ToString("y", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_YearMonthPattern(),
            "(YearMonthPattern)");
        Console.WriteLine("  Y     {0}", myDT.ToString("Y", myDTFI));
        Console.WriteLine("        {0} {1}\n", myDTFI.get_YearMonthPattern(),
            "(YearMonthPattern)");
    } //main 
} //SamplesDTFI

/*
This code produces the following output.

FORMAT  en-US EXAMPLE
CHAR    VALUE OF ASSOCIATED PROPERTY, IF ANY

  d     1/3/2002
        M/d/yyyy (ShortDatePattern)

  D     Thursday, January 03, 2002
        dddd, MMMM dd, yyyy (LongDatePattern)

  f     Thursday, January 03, 2002 12:00 AM

  F     Thursday, January 03, 2002 12:00:00 AM
        dddd, MMMM dd, yyyy h:mm:ss tt (FullDateTimePattern)

  g     1/3/2002 12:00 AM

  G     1/3/2002 12:00:00 AM

  m     January 03
        MMMM dd (MonthDayPattern)

  M     January 03
        MMMM dd (MonthDayPattern)

  o     2002-01-03T00:00:00.0000000

  r     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  R     Thu, 03 Jan 2002 00:00:00 GMT
        ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (RFC1123Pattern)

  s     2002-01-03T00:00:00
        yyyy'-'MM'-'dd'T'HH':'mm':'ss (SortableDateTimePattern)

  t     12:00 AM
        h:mm tt (ShortTimePattern)

  T     12:00:00 AM
        h:mm:ss tt (LongTimePattern)

  u     2002-01-03 00:00:00Z
        yyyy'-'MM'-'dd HH':'mm':'ss'Z' (UniversalSortableDateTimePattern)

  U     Thursday, January 03, 2002 8:00:00 AM

  y     January, 2002
        MMMM, yyyy (YearMonthPattern)

  Y     January, 2002
        MMMM, yyyy (YearMonthPattern)
*/
System..::.Object
  System.Globalization..::.DateTimeFormatInfo
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC, Xbox 360

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 3.5, 2.0, 1.0

XNA Framework

Compatible con: 2.0, 1.0
Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2009 Microsoft Corporation. Reservados todos los derechos. Temas legales | Marcas Registradas | Declaración de privacidad
Page view tracker