Преобразование строки в DateTime в PowerShell

Я пытаюсь преобразовать значение отметки времени файла в дату времени для сравнения двух различий во времени даты.

данные будут поступать в формате 24122014_022257. Мне нужно преобразовать это в дату, чтобы я мог сравнить значения:

$usdate="24122014_022257"   
$dateParts = $usdate -split "_"   
$final = $dateparts[0] + $dateParts[1]   

Как я могу это сделать?

3 ответов


вы можете использовать метод ParseExact:

[datetime]::ParseExact('24122014_022257','ddMMyyyy_HHmmss',$null)

Wednesday, December 24, 2014 2:22:57 AM

ParseExact сделает именно это. Во втором параметре можно указать пользовательский формат datetime. Вы можете оставить третий параметр как null или указать используемый язык (это может иметь значение, если вы импортируете файлы, созданные из системы с другим часовым поясом).

$usdate="24122014_022257"
[datetime]::ParseExact($usdate,"ddMMyyyy_HHmmss", [System.Globalization.CultureInfo]::CurrentCulture)

get-дата 24122014022257

Среда, 24 декабря 2014 года 2:22: 57