SVN钩子脚本获取日志中文乱码解决办法
举例:[周二 2025/03/04 10:27:13.00] 变更文件:A IT/testlog/????.xlsx
前提:环境变量已配置,日志信息编码格式已设置UTF-8
问题项:日志中文路径均显示为问号?
解决办法:
1、若使用批处理脚本(.bat
),添加:
@chcp 65001 > nul # 切换命令行代码页为UTF-8
2、Windows系统区域设置
- 进入
控制面板 > 区域 > 管理 > 更改系统区域设置
- 勾选
Beta版: 使用Unicode UTF-8提供全球语言支持
- 必须重启系统:该选项属于Windows系统区域设置的核心配置,直接影响非Unicode程序的默认编码解析规则。系统需通过重启重新加载全局语言环境配置,确保所有底层服务和进程使用UTF-8编码
3、Apache SVN模块(未测试)
在httpd.conf
中添加以下配置,统一处理请求编码
AddDefaultCharset UTF-8
SetEnv SVN_USE_UTF8 1
RequestHeader edit Accept-Encoding ".*" "utf-8"
PS:以上方案无法解决Windows服务端默认使用ANSI编码(GBK),例如“路径”显示为“浠撳簱” ,
因与跨平台客户端不兼容,若强制转码,会导致历史文件乱码