DateTimeOffset.Parse Método

Definição

Converte a representação de cadeias especificada de uma data e hora para o seu DateTimeOffset equivalente.

Sobrecargas

Name Description
Parse(String)

Converte a representação especificada de uma data, hora e deslocamento para o seu DateTimeOffset equivalente.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Divide um intervalo de caracteres num valor.

Parse(String, IFormatProvider)

Converte a representação de cadeias especificada de uma data e hora para o seu DateTimeOffset equivalente usando a informação de formato específica para cultura.

Parse(ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles)

Converte a representação de intervalo especificada de uma data e hora para o seu DateTimeOffset equivalente, utilizando a informação de formato e o estilo de formatação específicos de cada cultura.

Parse(String, IFormatProvider, DateTimeStyles)

Converte a representação em cadeia especificada de uma data e hora para o seu DateTimeOffset equivalente, usando a informação de formato e o estilo de formatação específicos da cultura especificados.

Observações

Importante

As eras nos calendários japoneses são baseadas no reinado do imperador e, portanto, espera-se que mudem. Por exemplo, 1º de maio de 2019 marcou o início da era Reiwa no JapaneseCalendar e JapaneseLunisolarCalendar. Essa mudança de era afeta todos os aplicativos que usam esses calendários. Para obter mais informações e determinar se seus aplicativos são afetados, consulte Manipulando uma nova era no calendário japonês no .NET. Para obter informações sobre como testar seus aplicativos em sistemas Windows para garantir sua prontidão para a mudança de era, consulte Preparar seu aplicativo para a mudança de era japonesa. Para obter recursos no .NET que oferecem suporte a calendários com várias eras e práticas recomendadas ao trabalhar com calendários que suportam várias eras, consulte Trabalhando com eras.

Parse(String)

Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs

Converte a representação especificada de uma data, hora e deslocamento para o seu DateTimeOffset equivalente.

public:
 static DateTimeOffset Parse(System::String ^ input);
public static DateTimeOffset Parse(string input);
static member Parse : string -> DateTimeOffset
Public Shared Function Parse (input As String) As DateTimeOffset

Parâmetros

input
String

Uma cadeia que contém uma data e hora para converter.

Devoluções

Um objeto que é equivalente à data e hora que está contido em input.

Exceções

O deslocamento é superior a 14 horas ou inferior a -14 horas.

input é null.

input não contém uma representação válida de uma sequência de uma data e hora.

-ou-

input contém a representação da cadeia de um valor de deslocamento sem data ou hora.

Exemplos

O exemplo seguinte chama o Parse(String) método para analisar várias cadeias de data e hora. O exemplo inclui resultados de 22 de março de 2007, sobre um sistema cuja cultura é en-us.

string dateString;
DateTimeOffset offsetDate;

// String with date only
dateString = "05/01/2008";
offsetDate = DateTimeOffset.Parse(dateString);
Console.WriteLine(offsetDate.ToString());

// String with time only
dateString = "11:36 PM";
offsetDate = DateTimeOffset.Parse(dateString);
Console.WriteLine(offsetDate.ToString());

// String with date and offset
dateString = "05/01/2008 +1:00";
offsetDate = DateTimeOffset.Parse(dateString);
Console.WriteLine(offsetDate.ToString());

// String with day abbreviation
dateString = "Thu May 01, 2008";
offsetDate = DateTimeOffset.Parse(dateString);
Console.WriteLine(offsetDate.ToString());
// String with date only
let dateString = "05/01/2008"
let offsetDate = DateTimeOffset.Parse dateString
printfn $"{offsetDate}"

// String with time only
let dateString = "11:36 PM"
let offsetDate = DateTimeOffset.Parse dateString
printfn $"{offsetDate}"

// String with date and offset
let dateString = "05/01/2008 +1:00"
let offsetDate = DateTimeOffset.Parse dateString
printfn $"{offsetDate}"

// String with day abbreviation
let dateString = "Thu May 01, 2008"
let offsetDate = DateTimeOffset.Parse(dateString)
printfn $"{offsetDate}"
Dim dateString As String
Dim offsetDate As DateTimeOffset

' String with date only
dateString = "05/01/2008"
offsetDate = DateTimeOffset.Parse(dateString)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 12:00:00 AM -07:00  

' String with time only
dateString = "11:36 PM"
offsetDate = DateTimeOffset.Parse(dateString)
Console.WriteLine(offsetDate.ToString())   ' Displays 3/26/2007 11:36:00 PM -07:00

' String with date and offset 
dateString = "05/01/2008 +7:00"
offsetDate = DateTimeOffset.Parse(dateString)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 12:00:00 AM +07:00

' String with day abbreviation
dateString = "Thu May 01, 2008"
offsetDate = DateTimeOffset.Parse(dateString)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 12:00:00 AM -07:00

Observações

Parse(String) analisa uma cadeia com três elementos que podem aparecer em qualquer ordem e são delimitados por espaços em branco. Estes três elementos são apresentados na tabela seguinte.

Elemento Example
<Data> "2/10/2007"
<Tempo> "13:02:03"
<Deslocamento> "-7:30"

Embora cada um destes elementos seja opcional, <o Deslocamento> não pode aparecer sozinho. Deve ser fornecido juntamente com <a data> ou <a hora>. Se <a Data> estiver em falta, o seu valor padrão é o dia atual. Se <o Time> estiver em falta, o seu valor padrão é 12:00:00 AM. Se <a Data> estiver presente mas o seu componente anual consistir apenas em dois dígitos, é convertida para um ano no calendário atual da cultura atual com base no valor da Calendar.TwoDigitYearMax propriedade. Se <o deslocamento> estiver em falta, o seu valor padrão é o deslocamento do fuso horário local. <O deslocamento> pode representar um deslocamento negativo ou positivo em relação ao Tempo Universal Coordenado (UTC). Em qualquer dos casos, <o deslocamento> deve incluir um símbolo de sinal.

A input cadeia é analisada utilizando a informação de formatação num DateTimeFormatInfo objeto que está inicializado para a cultura atual. Para analisar uma cadeia que contenha formatação designada que não corresponde necessariamente à formatação da cultura atual, use o ParseExact método e forneça um especificador de formato.

Ver também

Aplica-se a

Parse(ReadOnlySpan<Char>, IFormatProvider)

Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs

Divide um intervalo de caracteres num valor.

public:
 static DateTimeOffset Parse(ReadOnlySpan<char> s, IFormatProvider ^ provider) = ISpanParsable<DateTimeOffset>::Parse;
public static DateTimeOffset Parse(ReadOnlySpan<char> s, IFormatProvider? provider);
static member Parse : ReadOnlySpan<char> * IFormatProvider -> DateTimeOffset
Public Shared Function Parse (s As ReadOnlySpan(Of Char), provider As IFormatProvider) As DateTimeOffset

Parâmetros

s
ReadOnlySpan<Char>

O número de personagens a analisar.

provider
IFormatProvider

Um objeto que fornece informação de formatação específica da cultura sobre s.

Devoluções

O resultado da análise sintática s.

Implementações

Aplica-se a

Parse(String, IFormatProvider)

Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs

Converte a representação de cadeias especificada de uma data e hora para o seu DateTimeOffset equivalente usando a informação de formato específica para cultura.

public:
 static DateTimeOffset Parse(System::String ^ input, IFormatProvider ^ formatProvider);
public:
 static DateTimeOffset Parse(System::String ^ input, IFormatProvider ^ formatProvider) = IParsable<DateTimeOffset>::Parse;
public static DateTimeOffset Parse(string input, IFormatProvider formatProvider);
public static DateTimeOffset Parse(string input, IFormatProvider? formatProvider);
static member Parse : string * IFormatProvider -> DateTimeOffset
Public Shared Function Parse (input As String, formatProvider As IFormatProvider) As DateTimeOffset

Parâmetros

input
String

Uma cadeia que contém uma data e hora para converter.

formatProvider
IFormatProvider

Um objeto que fornece informação de formato específica da cultura sobre input.

Devoluções

Um objeto que é equivalente à data e hora contidas em input, conforme especificado por formatProvider.

Implementações

Exceções

O deslocamento é superior a 14 horas ou inferior a -14 horas.

input é null.

input não contém uma representação válida de uma sequência de uma data e hora.

-ou-

input contém a representação da cadeia de um valor de deslocamento sem data ou hora.

Exemplos

O exemplo seguinte analisa cadeias de data e hora formatadas para a cultura fr-fr e apresenta-as usando a cultura en-us padrão do sistema local.

DateTimeFormatInfo fmt = new CultureInfo("fr-fr").DateTimeFormat;
string dateString;
DateTimeOffset offsetDate;

dateString = "03-12-07";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
Console.WriteLine("{0} returns {1}",
                  dateString,
                  offsetDate.ToString());

dateString = "15/09/07 08:45:00 +1:00";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
Console.WriteLine("{0} returns {1}",
                  dateString,
                  offsetDate.ToString());

dateString = "mar. 1 janvier 2008 1:00:00 +1:00";
offsetDate = DateTimeOffset.Parse(dateString, fmt);
Console.WriteLine("{0} returns {1}",
                  dateString,
                  offsetDate.ToString());
// The example displays the following output to the console:
//    03-12-07 returns 12/3/2007 12:00:00 AM -08:00
//    15/09/07 08:45:00 +1:00 returns 9/15/2007 8:45:00 AM +01:00
//    mar. 1 janvier 2008 1:00:00 +1:00 returns 1/1/2008 1:00:00 AM +01:00
let fmt = CultureInfo("fr-fr").DateTimeFormat
let dateString = "03-12-07"
let offsetDate = DateTimeOffset.Parse(dateString, fmt)
printfn $"{dateString} returns {offsetDate}"

let dateString = "15/09/07 08:45:00 +1:00"
let offsetDate = DateTimeOffset.Parse(dateString, fmt)
printfn $"{dateString} returns {offsetDate}"

let dateString = "mar. 1 janvier 2008 1:00:00 +1:00"
let offsetDate = DateTimeOffset.Parse(dateString, fmt)
printfn $"{dateString} returns {offsetDate}"

// The example displays the following output to the console:
//    03-12-07 returns 12/3/2007 12:00:00 AM -08:00
//    15/09/07 08:45:00 +1:00 returns 9/15/2007 8:45:00 AM +01:00
//    mar. 1 janvier 2008 1:00:00 +1:00 returns 1/1/2008 1:00:00 AM +01:00
Dim fmt As DateTimeFormatInfo = New CultureInfo("fr-fr").DateTimeFormat
Dim dateString As String
Dim offsetDate As DateTimeOffset

dateString = "03-12-07"
offsetDate = DateTimeOffset.Parse(dateString, fmt)
Console.WriteLine("{0} returns {1}", _
                  dateString, _
                  offsetDate.ToString())

dateString = "15/09/07 08:45:00 +1:00"
offsetDate = DateTimeOffset.Parse(dateString, fmt)
Console.WriteLine("{0} returns {1}", _
                  dateString, _
                  offsetDate.ToString())

dateString = "mar. 1 janvier 2008 1:00:00 +1:00" 
offsetDate = DateTimeOffset.Parse(dateString, fmt)
Console.WriteLine("{0} returns {1}", _
                  dateString, _
                  offsetDate.ToString())
' The example displays the following output to the console:
'    03-12-07 returns 12/3/2007 12:00:00 AM -08:00
'    15/09/07 08:45:00 +1:00 returns 9/15/2007 8:45:00 AM +01:00
'    mar. 1 janvier 2008 1:00:00 +1:00 returns 1/1/2008 1:00:00 AM +01:00

Observações

Este método analisa uma cadeia com três elementos que podem aparecer em qualquer ordem e são delimitados por espaços em branco. Estes três elementos são apresentados na tabela seguinte.

Elemento Example
<Data> "2/10/2007"
<Tempo> "13:02:03"
<Deslocamento> "-7:30"

Embora cada um destes elementos seja opcional, <o Deslocamento> não pode aparecer sozinho. Deve ser fornecido juntamente com <a data> ou <a hora>. Se <a Data> estiver em falta, o seu valor padrão é o dia atual. Se <a Data> estiver presente mas o seu componente anual consistir apenas em dois dígitos, é convertida para um ano no provider calendário atual do parâmetro com base no valor da Calendar.TwoDigitYearMax propriedade. Se <o Time> estiver em falta, o seu valor padrão é 12:00:00 AM. Se <o deslocamento> estiver em falta, o seu valor padrão é o deslocamento do fuso horário local. <O deslocamento> pode representar um deslocamento negativo ou positivo em relação ao Tempo Universal Coordenado (UTC). Em qualquer dos casos, <o deslocamento> deve incluir um símbolo de sinal.

O formato destes três elementos é definido pelo formatProvider parâmetro, que pode ser um dos seguintes:

Se formatprovider for null, o CultureInfo objeto que corresponde à cultura atual é usado.

O sinal positivo ou negativo usado no <Deslocamento> deve ser ou + ou -. Não é definido pelas PositiveSign propriedades ou NegativeSign do NumberFormatInfo objeto do formatProvider parâmetro.

Ver também

Aplica-se a

Parse(ReadOnlySpan<Char>, IFormatProvider, DateTimeStyles)

Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs

Converte a representação de intervalo especificada de uma data e hora para o seu DateTimeOffset equivalente, utilizando a informação de formato e o estilo de formatação específicos de cada cultura.

public static DateTimeOffset Parse(ReadOnlySpan<char> input, IFormatProvider? formatProvider = default, System.Globalization.DateTimeStyles styles = System.Globalization.DateTimeStyles.None);
public static DateTimeOffset Parse(ReadOnlySpan<char> input, IFormatProvider formatProvider = default, System.Globalization.DateTimeStyles styles = System.Globalization.DateTimeStyles.None);
static member Parse : ReadOnlySpan<char> * IFormatProvider * System.Globalization.DateTimeStyles -> DateTimeOffset
Public Shared Function Parse (input As ReadOnlySpan(Of Char), Optional formatProvider As IFormatProvider = Nothing, Optional styles As DateTimeStyles = System.Globalization.DateTimeStyles.None) As DateTimeOffset

Parâmetros

input
ReadOnlySpan<Char>

Um espaço que contém os caracteres que representam uma data e hora para converter.

formatProvider
IFormatProvider

Um objeto que fornece informação de formato específica da cultura sobre input.

styles
DateTimeStyles

Uma combinação bit a bit de valores de enumeração que indica o formato permitido de input. Um valor típico a especificar é None.

Devoluções

Um objeto que é equivalente à data e hora contidas em input conforme especificado por formatProvider e styles.

Aplica-se a

Parse(String, IFormatProvider, DateTimeStyles)

Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs
Origem:
DateTimeOffset.cs

Converte a representação em cadeia especificada de uma data e hora para o seu DateTimeOffset equivalente, usando a informação de formato e o estilo de formatação específicos da cultura especificados.

public:
 static DateTimeOffset Parse(System::String ^ input, IFormatProvider ^ formatProvider, System::Globalization::DateTimeStyles styles);
public static DateTimeOffset Parse(string input, IFormatProvider formatProvider, System.Globalization.DateTimeStyles styles);
public static DateTimeOffset Parse(string input, IFormatProvider? formatProvider, System.Globalization.DateTimeStyles styles);
static member Parse : string * IFormatProvider * System.Globalization.DateTimeStyles -> DateTimeOffset
Public Shared Function Parse (input As String, formatProvider As IFormatProvider, styles As DateTimeStyles) As DateTimeOffset

Parâmetros

input
String

Uma cadeia que contém uma data e hora para converter.

formatProvider
IFormatProvider

Um objeto que fornece informação de formato específica da cultura sobre input.

styles
DateTimeStyles

Uma combinação bit a bit de valores de enumeração que indica o formato permitido de input. Um valor típico a especificar é None.

Devoluções

Um objeto que é equivalente à data e hora contidas em input conforme especificado por formatProvider e styles.

Exceções

O deslocamento é superior a 14 horas ou inferior a -14 horas.

-ou-

styles não é um valor válido DateTimeStyles .

-ou-

styles inclui um valor não suportado DateTimeStyles .

-ou-

styles inclui DateTimeStyles valores que não podem ser usados em conjunto.

input é null.

input não contém uma representação válida de uma sequência de uma data e hora.

-ou-

input contém a representação da cadeia de um valor de deslocamento sem data ou hora.

Exemplos

O exemplo seguinte ilustra o efeito de passar os DateTimeStyles.AssumeLocalvalores , DateTimeStyles.AssumeUniversal, e DateTimeStyles.AdjustToUniversal ao styles parâmetro do Parse(String, IFormatProvider, DateTimeStyles) método.

string dateString;
DateTimeOffset offsetDate;

dateString = "05/01/2008 6:00:00";
// Assume time is local
offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AssumeLocal);
Console.WriteLine(offsetDate.ToString());   // Displays 5/1/2008 6:00:00 AM -07:00

// Assume time is UTC
offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AssumeUniversal);
Console.WriteLine(offsetDate.ToString());   // Displays 5/1/2008 6:00:00 AM +00:00

// Parse and convert to UTC
dateString = "05/01/2008 6:00:00AM +5:00";
offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AdjustToUniversal);
Console.WriteLine(offsetDate.ToString());   // Displays 5/1/2008 1:00:00 AM +00:00
let dateString = "05/01/2008 6:00:00"
// Assume time is local
let offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AssumeLocal)
printfn $"{offsetDate}"   // Displays 5/1/2008 6:00:00 AM -07:00

// Assume time is UTC
let offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AssumeUniversal)
printfn $"{offsetDate}"   // Displays 5/1/2008 6:00:00 AM +00:00

// Parse and convert to UTC
let dateString = "05/01/2008 6:00:00AM +5:00"
let offsetDate = DateTimeOffset.Parse(dateString, null, DateTimeStyles.AdjustToUniversal)
printfn $"{offsetDate}"   // Displays 5/1/2008 1:00:00 AM +00:00
Dim dateString As String
Dim offsetDate As DateTimeOffset

dateString = "05/01/2008 6:00:00"
' Assume time is local 
offsetDate = DateTimeOffset.Parse(dateString, Nothing, DateTimeStyles.AssumeLocal)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 6:00:00 AM -07:00

' Assume time is UTC
offsetDate = DateTimeOffset.Parse(dateString, Nothing, DateTimeStyles.AssumeUniversal)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 6:00:00 AM +00:00

' Parse and convert to UTC 
dateString = "05/01/2008 6:00:00AM +5:00"
offsetDate = DateTimeOffset.Parse(dateString, Nothing, DateTimeStyles.AdjustToUniversal)
Console.WriteLine(offsetDate.ToString())   ' Displays 5/1/2008 1:00:00 AM +00:00

Observações

Este método analisa uma cadeia com três elementos que podem aparecer em qualquer ordem e são delimitados por espaços em branco. Estes três elementos são apresentados na tabela seguinte.

Elemento Example
<Data> "2/10/2007"
<Tempo> "13:02:03"
<Deslocamento> "-7:30"

Embora cada um destes elementos seja opcional, <o Deslocamento> não pode aparecer sozinho. Deve ser fornecido juntamente com <a data> ou <a hora>. Se <a Data> estiver em falta, o seu valor padrão é o dia atual. Se <a Data> estiver presente mas o seu componente anual consistir apenas em dois dígitos, é convertida para um ano no provider calendário atual do parâmetro com base no valor da Calendar.TwoDigitYearMax propriedade. Se <o Time> estiver em falta, o seu valor padrão é 12:00:00 AM. Se <o deslocamento> estiver em falta, o seu valor predefinido é o deslocamento do fuso horário local, ou TimeSpan.Zero se algum DateTimeStyles.AdjustToUniversal dos valores ou DateTimeStyles.AssumeUniversal estiver especificado no styles parâmetro. Se <o deslocamento> estiver presente, pode representar um deslocamento negativo ou positivo em relação ao Tempo Universal Coordenado (UTC). Em qualquer dos casos, <o deslocamento> deve incluir um símbolo de sinal.

O formato destes três elementos é definido pelo formatProvider parâmetro, que pode ser um dos seguintes:

Cada elemento pode também ser delimitado por espaços brancos à frente ou ao fim, e os <elementos Data> e <Hora> podem incluir espaços em branco interiores (como 6: 00:00). Apenas o <componente Offset> não pode incluir espaço em branco interior.

Se formatprovider for null, o CultureInfo objeto que corresponde à cultura atual é usado.

O sinal positivo ou negativo usado no <Deslocamento> deve ser ou + ou -. Não é definido pelas PositiveSign propriedades ou NegativeSign do NumberFormatInfo objeto devolvido pelo formatProvider parâmetro.

A tabela seguinte mostra os membros da System.Globalization.DateTimeStyles enumeração que são suportados.

Membro DateTimeStyles Descrição
AdjustToUniversal Analisa a cadeia representada por input e, se necessário, converte-a para UTC. É equivalente a analisar uma cadeia e depois chamar o DateTimeOffset.ToUniversalTime método do objeto devolvido DateTimeOffset .
AllowInnerWhite Embora válido, esse valor é ignorado. Espaço em branco interior é permitido nos <elementos Data> e <Hora> .
AllowLeadingWhite Embora válido, esse valor é ignorado. O espaço em branco inicial é permitido à frente de cada componente da cadeia analisada.
AllowTrailingWhite Embora válido, esse valor é ignorado. O espaço em branco final é permitido à frente de cada componente da cadeia analisada.
AllowWhiteSpaces Este é o comportamento padrão. Não pode ser anulado fornecendo um valor de enumeração mais restritivo DateTimeStyles , como DateTimeStyles.None.
AssumeLocal Indica que, se o input parâmetro não tiver um <elemento de deslocamento> , o deslocamento do fuso horário local deve ser fornecido. Este é o comportamento padrão do Parse método.
AssumeUniversal Indica que, se o input parâmetro não tiver um <elemento de deslocamento> , o deslocamento UTC (00:00) deve ser fornecido.
None Embora válido, este valor é ignorado e não tem efeito.
RoundtripKind Como a DateTimeOffset estrutura não inclui uma Kind propriedade, este valor não tem efeito.

Apenas o DateTimeStyles.NoCurrentDateDefault valor não é suportado. An ArgumentException é lançado se este valor for incluído no styles parâmetro.

Ver também

Aplica-se a