从Excel

时间:2015-06-15 16:02:09

标签: windows powershell

我正在寻找一种方法来修改计算机上的本地区域字段。我有两个程序需要以不同格式从Excel导出的CSV,一个在english-us(en-US),一个在french-canada(fr-CA)。问题是,我希望能够使用脚本更改这些参数,而不是每次都手动更改。

我需要更改ShortDate参数:

(GetCulture).DateTimeFormat.ShortDatePattern

还有小数分隔符和数字分组符号。

.xlsx文件位于Windows 2012服务器上,但本地计算机使用带有连接网络驱动器的Windows 7来获取这些文件。服务器本身没有安装Excel。因此,在将Excel文件保存为CSV时,它会使用本地区域参数,这些是我需要更改的文件。

有什么办法可以使用脚本设置这些参数吗?

1 个答案:

答案 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'
相关问题