我想要一个本地化月份/日期名称的表格/数据库(我使用的是 Windows)。我可以使用软件和 Windows API 创建此列表,但在我尝试之前,我想知道 Microsoft 是否有一个公开列表
- 月份长名称
- 月份简称
- 全天名称
- 日简称
.. 根据语言环境。
或者,微软只是实施Unicode CLDR定义?
答案1
您可以使用 Powershell 获取所有语言环境的长短月份和日期名称。打开 Powershell 并输入以下内容:
[System.Globalization.CultureInfo]::GetCultures([System.Globalization.CultureTypes]::AllCultures) |
foreach { $a = $_.DisplayName;
$b = $_.DateTimeFormat.MonthNames;
$c = $_.DateTimeFormat.AbbreviatedMonthNames;
$d = $_.DateTimeFormat.DayNames;
$e = $_.DateTimeFormat.AbbreviatedDayNames;
write "Name: $a `n`tMonths Long Name: $b `n`tMonths Short Name: $c`n`tDays Long Name: $d`n`tDays Short Name: $e`n"
} | Out-File locales.txt
结果将导出到名为locales.txt
例如,如果您只想获取fr-Fr
或ja-JP
:
[System.Globalization.CultureInfo]::GetCultures([System.Globalization.CultureTypes]::AllCultures) |
where{ $_.Name -eq 'fr-FR' -or $_.Name -eq 'ja-JP' } |
foreach { $a = $_.DisplayName;
$b = $_.DateTimeFormat.MonthNames;
$c = $_.DateTimeFormat.AbbreviatedMonthNames;
$d = $_.DateTimeFormat.DayNames;
$e = $_.DateTimeFormat.AbbreviatedDayNames;
write "Name: $a `n`tMonths Long Name: $b `n`tMonths Short Name: $c`n`tDays Long Name: $d`n`tDays Short Name: $e`n"
} | Out-File locales.txt