unicode - 需要将大量文本文件从 ANSI 批量转换为 Unicode

标签 unicode ansi

我有很多大小不同的 ANSI 文本文件(从几 KB 到 1GB+),我需要将它们转换为 Unicode。

目前,这是通过将文件加载到记事本中然后执行“另存为...”并选择 Unicode 作为编码来完成的。显然这是非常耗时的!

我正在寻找一种一次性转换所有文件的方法(在 Windows 中)。这些文件位于一个目录结构中,因此它需要能够遍历整个文件夹结构并转换其中的所有文件。

我已经尝试了几个选项,但到目前为止还没有真正满足所有条件:

  • ansi2unicode命令行实用程序。这是最接近我所追求的,因为它在文件夹结构中递归处理文件......但它在完成转换之前运行时一直崩溃。
  • CpConverter图形用户界面实用程序。在某种程度上工作正常,但在文件夹结构中处理多个文件时遇到困难 - 似乎只能处理一个文件夹中的文件
  • 有一个 DOS command在较小的文件上工作正常,但似乎无法处理大文件。
  • 尝试过 GnuWin sed utility但每次我尝试安装它时它都会崩溃

所以我还在找!如果有人有任何建议,我将不胜感激

谢谢...

最佳答案

好的,如果其他人有兴趣,我找到了一种使用 PowerShell 执行此操作的方法:

Get-ChildItem "c:\some path\" -Filter *.csv -recurse | 
    Foreach-Object {
    Write-Host (Get-Date).ToString() $_.FullName
    Get-Content $_.FullName | Set-Content -Encoding unicode ($_.FullName  + '_unicode.csv')
}

这会遍历整个文件夹结构并将所有 CSV 文件转换为 Unicode;转换后的文件将写入与原始文件相同的位置,但文件名会附加“unicode”。如果您想转换为不同的内容(例如 utf-8),您可以更改 -Encoding 参数的值。

它还会输出所有已转换文件的列表以及每个文件的时间戳

关于unicode - 需要将大量文本文件从 ANSI 批量转换为 Unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44157064/

相关文章:

java - Windows XP 是否支持 SWT Java 程序中的 unicode 按钮文本?

python - 使用 Python 将 Unicode 字符串转换为十六进制转义序列

c++ - ANSI到Unicode或向后转换:怎么办?

c - STM32 上的电压测量

unicode - 通过 FTP 将 ANSI 字符串写入 Unicode 文件

c - ANSI C编程

unicode - 某些终端无法正确显示表情符号

java - 如何通过 Java 从 MS Access 2007 数据库中读取 Unicode 字符?

delphi - 如何在按键时识别 unicode 键?

linux - "%{\033[0m%}"(代码零)是否将字体颜色重置为 "tput setaf"或 Xterm 默认颜色?