学习赫夫曼编码,对于如何把二进制流存入二进制文件或如何从二进制文件读出二进制流进行了研究, 总结网上诸多大侠的片言只语, 实现了这一功能。声明:本人只是在学习C语言,不能跟专业人士相提并论。
原理是用一组掩码与要读出或写入的字符进行位运算,逐个写入或输出二进制码流。
源码:
#include <stdio.h>
#define FILE_PATH "d:\\1.dat"
char *bin="001101110110001000010000111100";
unsigned char mask[]={
0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
FILE *fp;
int BinRead(){
unsigned char get[2