是否可以使用Powershell创建自定义文化?我已经看到了使用.NET和C#的示例,并且想知道powershell是否可以做到这一点。我只能通过计算机显示文化,而不能使用Powershell创建自定义文化。
msdn上的CultureAndRegionInfoBuilder类文档中的示例可以轻松转换为PowerShell。
例如,我想使用丹麦克朗作为默认货币,但在其他方面则使用美国文化信息选项:
$CultureName = 'x-my-culture'
$BaseCulture = [cultureinfo]::GetCultureInfo('en-US')
$BaseRegion = New-Object System.Globalization.RegionInfo 'US'
$Changes = @{
CurrencyEnglishName = 'Danish Krone'
CurrencyNativeName = 'Dansk Krone'
ISOCurrencySymbol = 'DKK'
}
try
{
# Set up CultureAndRegionInfoBuilder
Add-Type -AssemblyName sysglobl
$CultureBuilder = New-Object System.Globalization.CultureAndRegionInfoBuilder @($CultureName,[System.Globalization.CultureAndRegionModifiers]::None)
$CultureBuilder.LoadDataFromCultureInfo($BaseCulture)
$CultureBuilder.LoadDataFromRegionInfo($BaseRegion)
# Make appropriate changes
foreach($Property in $Changes.Keys){
$CultureBuilder.$Property = $Changes[$Property]
}
# Register your new culture
$CultureBuilder.Register()
}
catch
{
throw
}
Run Code Online (Sandbox Code Playgroud)
要再次注销自定义区域性,请使用静态Unregister()方法:
[System.Globalization.CultureAndRegionInfoBuilder]::Unregister('x-my-culture')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
566 次 |
| 最近记录: |