我需要一个程序来读取文件的内容并将它们写入另一个文件,但只有有效的 utf-8 字符的字符。问题是文件可能采用任何编码,文件的内容可能对应也可能不对应这种编码。
我知道这是一团糟,但这就是我要处理的数据。我需要“清理”的文件可能高达几 TB,因此我需要程序尽可能高效。目前我正在使用我用 python 编写的程序,但清理 100gb 需要长达一周的时间。
我正在考虑使用 w_char 函数读取字符,然后将它们作为整数管理并丢弃所有不在某个范围内的数字。这是最佳解决方案吗?
还有什么是用 C/C++ 读写的最有效方法?
编辑:问题不在于 IO 操作,这部分问题旨在为拥有更快的程序提供额外帮助,但真正的问题是如何快速识别非 UTF 字符。另外,我已经尝试过腭化和 RAM 磁盘。