Exportar (0) Imprimir
Expandir todo

DateTime.Parse (Método) (String, IFormatProvider)

Convierte la representación de cadena que se haya especificado para una fecha y hora en su DateTime equivalente, utilizando la información de formato específica de la referencia cultural especificada.

Espacio de nombres: System
Ensamblado: mscorlib (en mscorlib.dll)

public static DateTime Parse (
	string s,
	IFormatProvider provider
)
public static DateTime Parse (
	String s, 
	IFormatProvider provider
)
public static function Parse (
	s : String, 
	provider : IFormatProvider
) : DateTime

Parámetros

s

Cadena que contiene una fecha y hora que se van a convertir.

provider

IFormatProvider que aporta información de formato específica de la referencia cultural acerca de s.

Valor devuelto

DateTime equivalente a la fecha y hora contenidas en s tal y como especifica provider.

Tipo de excepciónCondición

ArgumentNullException

s es referencia de objeto null (Nothing en Visual Basic).

FormatException

s no contiene una representación de cadena válida de una fecha y hora.

La cadena s se analiza utilizando la información de formato de DateTimeFormatInfo que suministra provider.

Este método intenta analizar s completamente para evitar que se produzca FormatException. Si es posible, omite los datos no reconocidos y rellena la información que falta acerca de mes, día y año con la hora actual. Si s contiene sólo una fecha y ninguna hora, este método supone que es medianoche (00:00). Se omiten los caracteres de espacio en blanco iniciales, centrales o finales que pueda haber en s. La fecha y la hora pueden ir entre corchetes con un par de caracteres NUMBER SIGN iniciales y finales ('#', U+0023) y pueden terminar con uno o más caracteres NULL (U+0000).

El parámetro s debe contener la representación de una fecha y hora en uno de los formatos que se describen en DateTimeFormatInfo.

El parámetro provider proporciona información de formato de fecha y hora específica de la referencia cultural. Por ejemplo, los nombres de los días de la semana de un idioma en concreto o el orden de presentación preferido para el mes, el día y el año. Si provider es referencia de objeto null (Nothing en Visual Basic), se utiliza la referencia cultural actual.

Análisis de las referencias culturales personalizadas

Para analizar una cadena de fecha y hora generada para una referencia cultural personalizada, utilice el método ParseExact, en lugar del método Parse, para que la probabilidad de que la operación de análisis se realice correctamente sea mayor. Una cadena de fecha y hora para una referencia cultural personalizada puede ser complicada y, por consiguiente, difícil de analizar. El método Parse intenta analizar la cadena con modelos implícitos de análisis, pero en todos se puede producir un error. Por el contrario, el método ParseExact exige que se designen explícitamente uno o varios modelos exactos de análisis que es muy probable que se ejecuten correctamente.

Para obtener más información sobre las referencias culturales personalizadas, vea la clase System.Globalization.CultureAndRegionInfoBuilder.

En el ejemplo de código siguiente se muestra el método Parse.

using System;
using System.Globalization;

namespace Parse
{
    class Class1
    {
        public static void Main(string[] args)
        {
// Assume the current culture is en-US. 
// The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.

        string myDateTimeValue = "2/16/1992 12:15:12";
        DateTime myDateTime = DateTime.Parse(myDateTimeValue);
        Console.WriteLine("1) myDateTime       = {0}", myDateTime);

// Reverse month and day to conform to a different culture.
// The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.

        IFormatProvider culture = new CultureInfo("fr-FR", true);
        string myDateTimeFrenchValue = "    16/02/1992 12:15:12";
        DateTime myDateTimeFrench =
            DateTime.Parse(myDateTimeFrenchValue,
                           culture,
                           DateTimeStyles.NoCurrentDateDefault);
        Console.WriteLine("2) myDateTimeFrench = {0}", myDateTimeFrench);
    
// The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.

        string[] expectedFormats = {"G", "g", "f" ,"F"};
        myDateTimeFrench = 
                DateTime.ParseExact(myDateTimeFrenchValue,
                                    expectedFormats,
                                    culture,
                                    DateTimeStyles.AllowWhiteSpaces);
        Console.WriteLine("3) myDateTimeFrench = {0}", myDateTimeFrench);
        }
    }
}
/*
This example yields the following results:

1) myDateTime       = 2/16/1992 12:15:12 PM
2) myDateTimeFrench = 2/16/1992 12:15:12 PM
3) myDateTimeFrench = 2/16/1992 12:15:12 PM
*/

package Parse; 

import System.*;
import System.Globalization.*;

class Class1
{
    public static void main(String[] args)
    {
        // Assume the current culture is en-US. 
        // The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.
        String myDateTimeValue = "2/16/1992 12:15:12";
        DateTime myDateTime = DateTime.Parse(myDateTimeValue);
        Console.WriteLine("1) myDateTime       = {0}", myDateTime);
        // Reverse month and day to conform to a different culture.
        // The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.
        IFormatProvider culture = new CultureInfo("fr-FR", true);
        String myDateTimeFrenchValue = "    16/02/1992 12:15:12";
        DateTime myDateTimeFrench = DateTime.Parse(myDateTimeFrenchValue, 
            culture, DateTimeStyles.NoCurrentDateDefault);
        Console.WriteLine("2) myDateTimeFrench = {0}", myDateTimeFrench);
        // The date is Feburary 16, 1992, 12 hours, 15 minutes and 12 seconds.
        String expectedFormats[] =  { "G", "g", "f", "F" };
        myDateTimeFrench = DateTime.ParseExact(myDateTimeFrenchValue, 
            expectedFormats, culture, DateTimeStyles.AllowWhiteSpaces);
        Console.WriteLine("3) myDateTimeFrench = {0}", myDateTimeFrench);
    } //main
} //Class1
/*
This example yields the following results:

1) myDateTime       = 2/16/1992 12:15:12 PM
2) myDateTimeFrench = 2/16/1992 12:15:12 PM
3) myDateTimeFrench = 2/16/1992 12:15:12 PM
*/

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

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft