压缩文件,怎么用bitset?
用 huffman算法压缩文件,现在我只得到字符串的编码,转换到bitset用什么方法写入文件??
比如说
outfile.open("xiaobenben.dat",ios::binary); outfile.write((char *)bitset,sizeof(bitset<12>));outfile<<bitset;
[解决办法]
既然你的文件流是以二进制方式打开的,那么别用<<,使用write成员函数是正确的。
你可以把一个bitset对象转换为无符号整数再存储,读取时用该整数初始化bitset。
当然,要考虑bitset位长,较短时多个bitset可装到一个整数中等。
unsigned long temp = bitset.to_ulong(); //这里bitset为对象outfile.write(&temp,sizeof(unsigned long));