我需要从二进制文件中读取 16 位std::string
或char *
. 例如,一个二进制文件包含89 ab cd ef
,我希望能够将它们提取为std::string
s 或char *
. 我尝试了以下代码:
ifstream *p = new ifstream();
char *buffer;
p->seekg(address, ios::beg);
buffer = new char[16];
memset(buffer, 0, 16);
p->read(buffer, 16);
当我尝试std::cout
缓冲区时,什么都没有出现。如何在二进制文件中读取这些字符?
编辑:我一直在寻找缓冲区是 int 类型,例如“0x89abcdef”。有没有可能实现?