środa, 30 września 2015

Culture w PS

Ostatnio w projekcie jakieś cyrki pojawiały się. Postanowiłem troszkę porozglądać się po kulturze (formatowaniu dat) i napisałem skrypcik do wyświetlania daty dla wszystkich kultur.
Na początku potrzebujemy funkcję zwracającą listę kultur:
function Get-Culture
{
 [System.Globalization.CultureInfo]::GetCultures([System.Globalization.CultureTypes]::AllCultures) | %{ 
    try{
        [System.Globalization.CultureInfo]::CreateSpecificCulture($_.Name)
    }catch {}
}
}

Wywołąnie jest następujące:
$dt = Get-Date

Get-Culture 
| %{  New-Object PSObject -Property  @{Str = $dt.ToString($_); Name = $_.Name; DisplayName = $_.DisplayName}  } 
|  sort -Property Name
Teraz to można wyeksportować do pliku taki wynik. Poniżej zdjęcie jak wygląda rezultat wywołania w konsoli:



Przykłady jak będzie wyglądał LongDate, LongTime i ShortDate, ShortTime można sprawdzić pod tym linkiem