将"8 bit"(字节)字符串写入二进制文件?
Writing an "8 bit" (byte) string to a binary file?
我已经尝试了许多其他线程的建议,但无济于事。
我正在执行Huffman的编码,而我遇到的部分是让我的string 'byte'
(通常长度8)作为输出二进制文件的字符写入。每当我打开输出文件时,位都与我认为输入的内容完全不同。此外,当我在将字符串'字节'转换为字节为char之后输出char 'c'
时,'c'
的二进制文件与我的原始输入不符。例如,'c'
将是一个10位字符,总的来说,我超级困惑。
那么,我该如何正确执行?还是问题可能在其他地方?
这是代码:
if (byte.length() >= 8) {
bitset<8> b(byte.substr(0, 8));
c = static_cast<unsigned char>(b.to_ulong());
flit.write(&c, 1);
}
-
byte
-符合我的位字符的字符串 -
flit
- ouput文件流
您是否有一个原因您试图将bitset表示为无签名的长时间?从您的描述中,听起来您要做的事情由bitset::to_string
链接的功能
相关文章:
- 如何从二进制文件中读取字符串
- 将位字符串转储到二进制文件的最佳方法是什么
- 如何检查二进制文件中是否存在字符串
- 将大型二进制字符串写入二进制文件
- 如何在 c++ 中将二进制文件读取为字符串
- 在C++中使用 fread 从二进制文件中读取字符串及其长度
- C++实现代码中的字符串不应存在于输出二进制文件中.如何解决
- 无法使用 fstream 从二进制文件中读取字符串,而是显示奇怪的符号
- C 字符串到C char数组,以写入二进制文件
- 将"8 bit"(字节)字符串写入二进制文件?
- 我正在尝试读取一个包含字符串和整数的二进制文件..并打印出与字符串对应的整数
- 从二进制文件 C++ 读取的字符串数组写入
- 如何在 c++ 中使用二进制文件输入/输出读取/写入结构的字符串类型成员
- 将从二进制文件读取的字符串转换为整数
- 将 int 的二进制文件读取到字符串 c++
- 在二进制文件中读取字符串C
- C/C++ 读取具有多个字符串和字符的二进制文件
- 调试读/写字符串到二进制文件
- 如何用C++递归地从二进制文件中读取自定义字符串
- 将二进制字符串写入二进制文件