编写代码切换Windows系统的小数点/逗号分隔符设置
Windows小数分隔符检测与双向切换实现方案
核心实现代码(PowerShell)
用Windows自带的PowerShell编写脚本,无需额外安装依赖,代码如下:
# 获取当前用户的小数分隔符设置 $currentDecimal = (Get-ItemProperty -Path "HKCU:\Control Panel\International").sDecimal # 计算要切换到的目标分隔符 $newDecimal = if ($currentDecimal -eq ".") { "," } else { "." } # 更新注册表设置 Set-ItemProperty -Path "HKCU:\Control Panel\International" -Name sDecimal -Value $newDecimal # 输出状态提示 Write-Host "当前小数分隔符: $currentDecimal" -ForegroundColor Cyan Write-Host "已切换为: $newDecimal" -ForegroundColor Green Write-Host "注意:部分应用需重启后生效,建议重启资源管理器或重新登录" -ForegroundColor Yellow # 暂停等待用户查看结果 Read-Host "按任意键退出"
代码说明
- 读取当前用户区域设置注册表项(
HKCU:\Control Panel\International)中的sDecimal值,这是Windows存储小数分隔符的官方位置 - 自动判断当前分隔符,双向切换为点(
.)或逗号(,) - 写入注册表后即时更新设置,部分应用需要重启才能识别新的分隔符
- 彩色提示信息便于快速确认切换结果
制作桌面快捷方式
- 将上述代码保存为
.ps1格式文件,比如ToggleDecimalSeparator.ps1,存到你指定的路径(例:C:\Scripts\ToggleDecimalSeparator.ps1) - 右键桌面空白处 → 「新建」→「快捷方式」
- 在「对象位置」输入以下命令(替换成你的脚本实际路径):
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\ToggleDecimalSeparator.ps1" - 点击「下一步」,输入快捷方式名称(如「切换小数分隔符」),再点击「完成」
- 可选:右键快捷方式→「属性」,点击「更改图标」,从
C:\Windows\System32\shell32.dll或其他系统文件中选择合适图标,提升辨识度
注意事项
- 无需管理员权限:修改的是当前用户的注册表项,仅对当前登录用户生效
- 执行策略:
-ExecutionPolicy Bypass参数用于临时绕过PowerShell的脚本执行限制,避免默认阻止提示 - 生效范围:系统级应用(如记事本、部分内置工具)可能需要重启资源管理器或重新登录才能识别新设置,第三方应用通常重启即可
内容的提问来源于stack exchange,提问作者Duckbill
相关产品推荐
相关产品推荐

