快速批量转码:开发源码一键转UTF-8!

使用 PowerShell 实现文件编码格式转换脚本

场景:将 src 文件夹中所有 .h 和 .cpp 文件转为 UTF-8 编码格式

使用场景说明:

当你在多平台开发(如 Windows 与 Linux)之间迁移项目时,经常会遇到编码不一致的问题。PowerShell 脚本可以快速批量将源码文件(如 .h 和 .cpp)转换为标准的 UTF-8 编码,避免乱码与编译错误。


PowerShell 脚本:批量转换文件编码为 UTF-8

# 设置源目录
$srcDir = "src"

# 获取所有.h 和 .cpp 文件
$files = Get-ChildItem -Path $srcDir -Recurse -Include *.h, *.cpp

foreach ($file in $files) {
    # 读取文件内容,自动识别编码
    $content = Get-Content -Path $file.FullName -Raw

    # 使用UTF8无BOM编码写回原文件
    [System.IO.File]::WriteAllText($file.FullName, $content, New-Object System.Text.UTF8Encoding($false))
}

Write-Host "文件已成功转换为 UTF-8 编码"

特性说明:

  • 自动递归子目录
  • 保留文件原始路径和内容
  • 避免 BOM 带来的兼容性问题(使用无 BOM 的 UTF-8 编码)

如果你有更多格式转换需求(如 UTF-16、GBK 到 UTF-8),也可以扩展这个脚本,按需修改编码类型即可。