Como Converter uma String em Datetime no PowerShell

  1. Use ParseExact para Converter String em DateTime no PowerShell
  2. Use a Conversão Explícita para Converter uma String em DateTime no PowerShell
  3. Use o Cmdlet Get-Date para Converter uma String em DateTime no PowerShell
  4. Use Parse para Converter uma String em DateTime no PowerShell
  5. Conclusão
Como Converter uma String em Datetime no PowerShell

Converter representações de strings de datas e horas em objetos DateTime é uma tarefa comum na programação em PowerShell, frequentemente encontrada ao lidar com dados de diversas fontes ou formatos. Neste guia técnico, exploramos vários métodos para alcançar essa tarefa, cada um oferecendo suas vantagens únicas.

Desde a precisão do método ParseExact até a simplicidade da conversão explícita [DateTime] e a versatilidade do cmdlet Get-Date, cobrimos várias abordagens para atender diferentes cenários e preferências. Além disso, mergulhamos no poderoso método Parse, fornecendo explicações detalhadas, sintaxe e exemplos práticos de código para facilitar uma compreensão abrangente de cada método.

Use ParseExact para Converter String em DateTime no PowerShell

Converter uma representação de string de uma data e hora em um objeto DateTime é uma tarefa comum na programação em PowerShell, especialmente ao lidar com dados de várias fontes ou formatos. Uma abordagem para realizar isso é usando o método ParseExact, que permite especificar o formato exato da string de entrada, proporcionando mais controle sobre o processo de conversão.

$dateString = "2024-02-05"
$date = [datetime]::ParseExact($dateString, "yyyy-MM-dd", $null)
$date

No trecho de código PowerShell fornecido, estamos utilizando o método ParseExact para converter uma representação de string de uma data, "2024-02-05", em um objeto DateTime. Ao especificar o formato exato da string de entrada como "yyyy-MM-dd", garantimos uma conversão precisa, não afetada pelas configurações de data do sistema ou variações culturais.

O objeto DateTime resultante, armazenado na variável $date, representa com precisão a data analisada, permitindo integração suave nas operações subsequentes. Quando imprimimos $date, obtemos a saída esperada, confirmando a conversão bem-sucedida.

Saída:

converter uma string para datetime no powershell - saída

Use a Conversão Explícita para Converter uma String em DateTime no PowerShell

O método explícito [DateTime] no PowerShell é um acelerador de tipo que permite a conversão direta de uma string em um objeto DateTime. Quando utilizado, instrui o PowerShell a interpretar a string fornecida como um valor DateTime sem a necessidade de instruções adicionais de análise ou formatação.

Esse método é particularmente útil quando a string de entrada segue um formato de data padrão, como ISO 8601 (por exemplo, "YYYY-MM-DD"), pois simplifica o processo de conversão e melhora a legibilidade do código.

$dateString = "2024-02-05"
[DateTime]$date = $dateString
$date

Neste trecho de código PowerShell fornecido, estamos usando o método explícito [DateTime] para converter a string "2024-02-05" em um objeto DateTime. Ao simplesmente atribuir a variável de string $dateString à variável $date com o acelerador de tipo [DateTime], o PowerShell converte automaticamente a string em um objeto DateTime.

Quando imprimimos $date, obtemos a saída esperada, confirmando a conversão bem-sucedida.

Saída:

converter uma string para datetime no powershell - saída

Use o Cmdlet Get-Date para Converter uma String em DateTime no PowerShell

No PowerShell, o cmdlet Get-Date serve não apenas para buscar a data e hora atuais, mas também para converter uma representação de string de uma data e hora em um objeto DateTime. Essa flexibilidade torna o Get-Date uma ferramenta útil para lidar com operações relacionadas a datas em scripts do PowerShell.

Quando fornecido com um argumento de string, o Get-Date tenta automaticamente analisá-lo em um objeto DateTime, tornando conveniente a conversão de strings de data de vários formatos em um formato DateTime padronizado.

$dateString = "2024-02-05"
[DateTime]$date = $dateString
$date

No trecho de código fornecido, temos uma variável de string $dateString contendo a data no formato "YYYY-MM-DD". Utilizando o cmdlet Get-Date, convertamos essa string em um objeto DateTime e a atribuímos à variável $date.

Confiamos no cmdlet Get-Date para interpretar automaticamente a string $dateString como uma data e analisá-la no objeto DateTime correspondente.

Saída:

converter uma string para datetime em powershell - saída

Use Parse para Converter uma String em DateTime no PowerShell

No PowerShell, o método Parse é uma ferramenta poderosa para converter uma representação de string de uma data e hora em um objeto DateTime. Este método proporciona controle preciso sobre o processo de análise, permitindo que o usuário especifique o formato exato da string de entrada.

Ao definir o formato explicitamente, o método Parse garante uma conversão precisa, independentemente das configurações regionais ou variações culturais do sistema.

$dateString = "2024-02-05"
$date = [datetime]::Parse($dateString)
$date

Neste exemplo, demonstramos como usar o método Parse para converter uma representação de string de uma data em um objeto DateTime no PowerShell. Ao invocar o método Parse no acelerador de tipo [datetime], analisamos a string de entrada $dateString e armazenamos o resultado na variável $date.

Saída:

converter uma string para datetime no powershell - saída

Conclusão

O PowerShell oferece vários métodos para converter strings em objetos DateTime, cada um atendendo a diferentes requisitos e preferências. Se você precisa de controle preciso sobre a formatação com ParseExact, simplicidade com a conversão explícita [DateTime], análise automática com Get-Date, ou controle detalhado com Parse, o PowerShell fornece a flexibilidade e funcionalidade necessárias para uma manipulação eficiente de datas e horas.

Ao dominar esses métodos e entender suas nuances, os usuários do PowerShell podem simplificar seus scripts e lidar efetivamente com tarefas relacionadas a datas, aumentando a produtividade e garantindo um processamento de dados preciso.

Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Artigo relacionado - PowerShell DateTime