Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
0 de 1 pessoas classificaram isso como útil - Avalie este tópico

Método DateTime.Parse (String)

Converte a representação de cadeia de caracteres especificada de data e hora em seu equivalente de DateTime .

Namespace:  System
Assembly:  mscorlib (em mscorlib.dll)
public static DateTime Parse(
	string s
)

Parâmetros

s
Tipo: System.String
Uma cadeia de caracteres que contém uma data e hora converter.

Valor de retorno

Tipo: System.DateTime
Um objeto que é equivalente à data e hora contidas em s.
ExceçãoCondição
ArgumentNullException

s é null.

FormatException

s não contém uma representação de cadeia de caracteres válido de data e hora.

O método de DateTime.Parse(String) tenta converter uma representação de cadeia de caracteres de uma data e um valor de tempo em seu equivalente de DateTime . A cadeia de caracteres a ser analisada pode levar alguns dos seguintes formas:

  • Uma cadeia de caracteres com um componente de tempo.

  • Uma cadeia de caracteres com uma data mas nenhum componente de tempo.

  • Uma cadeia de caracteres com um tempo mas nenhum componente de data.

  • Uma cadeia de caracteres que inclui informações de zona de tempo e atendem a ISO 8601. Por exemplo, o primeiro as duas cadeias de caracteres designa o Tempo Universal Coordenado (UTC); o segundo designa o horário em um fuso horário sete horas anteriores ao UTC:

    2008-11-01T19: 35:00.0000000Z

    2008-11-01T19: 35:00.0000000-07: 00

  • Uma cadeia de caracteres que inclui o designador GMT e atendem a RFC um formato de 1123 horas. Por exemplo:

    Sat:, o 1º de novembro de 2008 19:35GMT 00

  • Uma cadeia de caracteres que inclui a data e hora junto com informações de deslocamento da zona de tempo. Por exemplo:

    03/01/2009 05:42:00 -5:00

Este método tenta analisar completamente s e evitá-lo lançar FormatException. Ignora dados não reconhecido se possível e preenche o mês, o dia, e informações dentro de falta do ano com a data atual. Se s não contém apenas uma data e hora, nenhuma este método assume a meia-noite de 12:00. Se s não contém somente nenhuma data e hora, este método assume a data atual. Se s inclui um componente de data com um ano de dois dígitos, ele é convertido em um ano atual no calendário da cultura atual com base no valor da propriedade de Calendar.TwoDigitYearMax . Espaćamento, interna, ou o caractere de espaço em branco à direita em s são ignorados. A data e hora podem ser suportadas com um par de caracteres de SINAL à esquerda e direita de NÚMERO (“#”, U+0023), e pode ser arrastado com um ou mais caracteres (Desde NULOS).

Observação importanteImportante

Porque a representação de cadeia de caracteres de uma data e hora devem estar em um padrão reconhecido, os aplicativos devem sempre usar manipulação de exceção ao chamar o método de Parse(String) para analisar entradas do usuário. Como alternativa, você pode chamar o método de DateTime.TryParse(String, DateTime) para analisar uma cadeia de caracteres de data e hora e retornar um valor que indica se a operação de análise foi bem-sucedida.

A cadeia de caracteres s é analisado usando informações de formatação no objeto atual de DateTimeFormatInfo , que é fornecido implicitamente pela cultura de segmento atual.

Observação importanteImportante

Senão tentativas do método de Parse(String) para analisar a representação de cadeia de caracteres de uma data e hora usando as regras de formatação de cultura atual, tentando analisar uma cadeia de caracteres específica entre culturas diferentes podem falhar ou retornar resultados diferentes. Se um determinado formato de data e hora será analisado por meio de locais diferentes, use o método de DateTime.Parse(String, IFormatProvider) ou um das sobrecargas do método de ParseExact e fornecer um especificador de formato.

Em a maioria dos casos, o método de Parse(String) retorna um valor de DateTime cuja propriedade de Kind é DateTimeKind.Unspecified. Em o entanto, se a cadeia de caracteres a ser analisada contém informações de zona de tempo como definido por ISO 8601 ou se inclui o designador mais antigo GMT, o método de Parse(String) executa qualquer conversão necessária de tempo e retorna um valor de DateTime cujas data e hora refletem a hora local e cujas a propriedade de Kind é DateTimeKind.Local. O exemplo a seguir ilustra essas representações de cadeia de caracteres.


string[] dateStrings = {"2008-05-01T07:34:42-5:00", 
                        "2008-05-01 7:34:42Z", 
                        "Thu, 01 May 2008 07:34:42 GMT"};
foreach (string dateString in dateStrings)
{
   DateTime convertedDate = DateTime.Parse(dateString);
   Console.WriteLine("Converted {0} to {1} time {2}.", 
                     dateString, 
                     convertedDate.Kind.ToString(), 
                     convertedDate);
}                              
// These calls to the DateTime.Parse method display the following output:
//    Converted 2008-05-01T07:34:42-5:00 to Local time 5/1/2008 5:34:42 AM.
//    Converted 2008-05-01 7:34:42Z to Local time 5/1/2008 12:34:42 AM.
//    Converted Thu, 01 May 2008 07:34:42 GMT to Local time 5/1/2008 12:34:42 AM.                                             


Observações para chamadores

A formatação é influenciada pelas propriedades do objeto atual de DateTimeFormatInfo , que são derivadas por padrão item de Opções Regionais e de Idioma no painel de controle. Uma razão que o método de Parse inesperada pode lançar FormatException é se DateTimeFormatInfo.DateSeparator as propriedades e atuais de DateTimeFormatInfo.TimeSeparator são definidos para o mesmo valor.

O exemplo demonstra o método de Parse(String) . Analisar a representação de cadeia de caracteres dos vários valores de data e tempo usando as convenções de formatação de cultura en-us. U., que é a cultura de segmento atual do computador usado para produzir saída de exemplo. Trata FormatException que é acionada quando o método tenta analisar a representação de cadeia de caracteres de uma data e hora usando as convenções de formatação de alguma outra cultura. Também mostra como analisar com êxito um valor de data e hora que não use as convenções de formatação de cultura de segmento atual.


using System;
using System.Globalization;

public class DateTimeParser
{
   public static void Main()
   {
      // Assume the current culture is en-US. 
      // The date is February 16, 2008, 12 hours, 15 minutes and 12 seconds.

      // Use standard en-US date and time value
      DateTime dateValue;
      string dateString = "2/16/2008 12:15:12 PM";
      try {
         dateValue = DateTime.Parse(dateString);
         Console.WriteLine("'{0}' converted to {1}.", dateString, dateValue);
      }   
      catch (FormatException) {
         Console.WriteLine("Unable to convert '{0}'.", dateString);
      }

      // Reverse month and day to conform to the fr-FR culture.
      // The date is February 16, 2008, 12 hours, 15 minutes and 12 seconds.
      dateString = "16/02/2008 12:15:12";
      try {
         dateValue = DateTime.Parse(dateString);
         Console.WriteLine("'{0}' converted to {1}.", dateString, dateValue);
      }   
      catch (FormatException) {
         Console.WriteLine("Unable to convert '{0}'.", dateString);
      }

      // Call another overload of Parse to successfully convert string
      // formatted according to conventions of fr-FR culture.      
      try {
         dateValue = DateTime.Parse(dateString, new CultureInfo("fr-FR", false));
         Console.WriteLine("'{0}' converted to {1}.", dateString, dateValue);
      }   
      catch (FormatException) {
         Console.WriteLine("Unable to convert '{0}'.", dateString);
      }

      // Parse string with date but no time component.
      dateString = "2/16/2008";
      try {
         dateValue = DateTime.Parse(dateString);
         Console.WriteLine("'{0}' converted to {1}.", dateString, dateValue);
      }   
      catch (FormatException) {
         Console.WriteLine("Unable to convert '{0}'.", dateString);
      }   
   }
}
// The example displays the following output to the console:
//       '2/16/2008 12:15:12 PM' converted to 2/16/2008 12:15:12 PM.
//       Unable to convert '16/02/2008 12:15:12'.
//       '16/02/2008 12:15:12' converted to 2/16/2008 12:15:12 PM.
//       '2/16/2008' converted to 2/16/2008 12:00:00 AM.


.NET Framework

Com suporte em: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Biblioteca de Classes Portátil

Com suporte em: Biblioteca de Classes Portátil

.NET para aplicativos da Windows Store

Com suporte em: Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte .Requisitos de sistema do NET Framework.

Data

Histórico

Razão

Outubro de 2010

Mencione removido de DateTimeFormatInfo.GetAllDateTimePatterns.

Content bug fix.

Isso foi útil para você?
(1500 caracteres restantes)

Contribuições da comunidade

ADICIONAR
© 2013 Microsoft. Todos os direitos reservados.