我正在寻找一种方法来修改计算机上的本地区域字段。我有两个程序需要以不同格式从Excel导出的CSV,一个在english-us(en-US),一个在french-canada(fr-CA)。问题是,我希望能够使用脚本更改这些参数,而不是每次都手动更改。
我需要更改ShortDate
参数:
(GetCulture).DateTimeFormat.ShortDatePattern
还有小数分隔符和数字分组符号。
.xlsx文件位于Windows 2012服务器上,但本地计算机使用带有连接网络驱动器的Windows 7来获取这些文件。服务器本身没有安装Excel。因此,在将Excel文件保存为CSV时,它会使用本地区域参数,这些是我需要更改的文件。
有什么办法可以使用脚本设置这些参数吗?
答案 0 :(得分:0)
在Windows 8(或Windows Server 2012)及更高版本上,您可以使用Set-WinSystemLocale
cmdlet:
function Toggle-Locale{
param($Locale)
switch -wildcard($Locale) {
"en*" { Set-WinSystemLocale [cultureinfo]::GetCultureInfo('en-US') }
"fr*" { Set-WinSystemLocale [cultureinfo]::GetCultureInfo('fr-FR') }
default { Write-Warning "Locale not recognized" }
}
}
Toggle-Locale 'french'