2016-06-24 5 views
0

で、日付時刻に文字列を変換する:、問題がある私は、ファイル名(文字列)を解析し、次の行を使用してPowerShellでの日付に変換しようとしていますPowerShellの

([datetime]::ParseExact($DirName.BaseName,'yyyyMMdd',$null) 

ないすべてそのディレクトリ内のフォルダのその命名規則に従います。フォルダが命名規則に合っているかどうかを最初にテストするにはどうすればよいでしょうか?そうであれば、それを日付オブジェクトに変換しますか?どんな助けでも大歓迎です。

+0

「TryParseExact」 – PetSerAl

+0

RegExを使用してください。そうすれば、さまざまなパターンを検出し、特定のソリューションでそれらに対応することができます。 –

答えて

2

私は最初にチェックすることはありません。電話をtry..catchブロックに入れてください。しかし$nullではなくInvariantCultureを使用することをお勧めします。

$culture = [Globalization.CultureInfo]::InvariantCulture 
try { 
    [datetime]::ParseExact($DirName.BaseName, 'yyyyMMdd', $culture) 
} catch { 
    # not a valid date 
} 
関連する問題