PowerShellのGet-Dateコマンドレットを使用することにより、指定した文字列日時を引数としてDateTimeオブジェクトを作成することができます。
以下に実際の実行例を記します。
以下にようにGet-Dateに日付文字列を渡すとDateTimeオブジェクトを作成することができます。
PS D:\> $feb = Get-Date 2016-2-1 PS D:\> $feb.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True DateTime System.ValueType
PS D:\> $feb 2016年2月1日 0:00:00
上記の実行例では、時間を指定していないので0:0:0となります。
以下のように時間も指定することができます。
日付と時間の間に半角スペースがあるので、ダブルクォーテーションで囲んであります。
PS D:\> $feb = Get-Date "2016-2-29 12:34:56" PS D:\> $feb 2016年2月29日 12:34:56
年月日の区切りにスラッシュを使用することもできます。
PS D:\> $mar = Get-Date "2016/3/1 1:02:03" PS D:\> $mar 2016年3月1日 1:02:03
ミリ秒を指定する場合は以下のように記述します。
PS D:\> $mar = Get-Date "2016/3/1 1:02:03.999" PS D:\> $mar 2016年3月1日 1:02:03 PS D:\> $mar | Format-List DisplayHint : DateTime Date : 2016/03/01 0:00:00 Day : 1 DayOfWeek : Tuesday DayOfYear : 61 Hour : 1 Kind : Unspecified Millisecond : 999 Minute : 2 Month : 3 Second : 3 Ticks : 635923909239990000 TimeOfDay : 01:02:03.9990000 Year : 2016 DateTime : 2016年3月1日 1:02:03
以上、PowerShellで日時文字列をDateTmeに変換する方法でした。