#powershell #datetime
#powershell #datetime
Вопрос:
Мне не помешала бы помощь в определении синтаксиса форматирования для преобразования строки в DateTime в PowerShell. Я перепробовал много комбинаций и продолжаю получать Exception calling "ParseExact" with "3" argument(s): "String was not recognized as a valid DateTime."
Код, который я пытаюсь использовать, выглядит следующим образом:
$timeinfo = '1/3/2020 9:56 AM'
$template = 'M/d/yyyy h:mm tt'
$culture = [Globalization.CultureInfo]::InvariantCulture
[DateTime]::ParseExact($timeinfo, $template, $culture)
Я использую синтаксис, который я нашел здесь: https://community.idera.com/database-tools/powershell/powertips/b/tips/posts/parsing-custom-datetime-formats . Кто-нибудь захочет показать мне, что я делаю неправильно? Я застрял! Большое спасибо!
Комментарии:
1. Ваша
$timeinfo
строка заполнена скрытыми управляющими символами слева направо, очистите строку, и она будет работать:$timeinfo = $timeinfo -replace 'p{Cf}'
2. @MathiasR.Jessen большое вам спасибо! Это сделало свое дело! Никогда бы не подумал о скрытых персонажах.
Ответ №1:
попробуйте это, и пусть анализатор сделает всю работу:
$timeinfo = '04/02/2020 02:00 PM'
[datetime]$timeinfo