所以这是我用来从文件中读取的代码。我试图读取文件中的每个字节,其中包括从0x00到0xFF的值。但由于某种原因,0x09被跳过。在ascii表中,0x09是Tab字符。
typedef unsigned char byte;
std::ifstream fin;
fin.open(fileName, std::ios::binary);
byte input;
std::vector<byte> fileContents;
for (int i = 0; i < 4096; i++)
{
fin >> input;
fileContents.push_back(input);
}
是否有任何原因导致0x09过去?
这是文件的链接
https://drive.google.com/file/d/0B9LMmsGNPg7UaVcwbWRsNi1xMFk/view?usp=sharing
答案 0 :(得分:2)
operator>>
都是FormattedInputFunction。
你不想要格式化输入,你想要原始字符;正如约阿希姆所说,使用read或get。
顺便说一句,如果你想要角色,为什么要使用unsigned char
? std::istream
已char_type=char
,因此您可能应该与之匹配。