首先对于待编码的文件进行读取存进一个字符数组中,将这个字符数组读进一个键值对中,算出他们所对应的权值。然后建立哈夫曼树,这个时候可以算出每个字符所对应的编码,则可以求出每个字符对应的二进制。接着建立缓冲区文件,将这些二进制数存到缓冲区数组中,并将这个数组写入到缓冲区文件中,每次从缓冲区文件中读取一个数组用于在HC中查找所对应的字符,如果找到这个字符,就把它写入到最终的数组中,如果没有找到就将这个临时的数组向下多读一位,最后建立一个文件向里边写文件,将最终的数组写入。