Если вам необходимо уменьшить файл, чтобы удалить плохие символы, просто прочитайте файл по символу или блоку за раз и запишите его в новый файл, пропуская плохие символы.
Это также дает вам отмену!
Если вы можете заменить плохие символы на месте, чтобы длина файла не изменилась, сопоставьте файл и просканируйте память, заменив каждый плохой символ, например, пробелом (ascii 32). Это самый простой и, вероятно, более быстрый процесс, но в любом случае вы будете доминировать над необработанным диском i / o