Я работаю над проектом сжатия файлов huffman. До сих пор я знаю, что это что-то вроде работает:Как настроить кодировку текстового файла в C++?
file.txt(original) -> file.huf(encoded, compressed) -> file.txt(decoded)
Что я должен сделать, это открыть текстовый файл, сгенерировать код Хаффмана, но как я могу заменить эту коду в двоичном коде файл исходного файла. Например, если file.txt
хранит abc
, тогда в его закодированном ASCII файле будет храниться 01100001 01100010 01100011
, а huffman-кодированный файл i.e file.huf
должен хранить 10 11 0
, а затем этот файл должен быть декодирован с использованием сформированной карты кодирования.
Мой вопрос в том, как я могу это сделать в C++ на уровне реализации файла, как я могу изменить двоичный файл?