Как видно из заголовка, как вы читаете шестнадцатеричные значения, используя fstream
?
У меня есть этот код: (скажем, у нас есть "FF" в файле.)
fstream infile;
infile.open(filename, fstream::in|fstream::out|fstream::app);
int a;
infile >> std::hex;
infile >> a;
cout << hex << a;
но это не дает мне никакого вывода вместо ff
.Я знаю, что есть fscanf(fp, "%x", val)
, но мне любопытно, есть ли способ сделать это, используя потоковую библиотеку.
ОБНОВЛЕНИЕ :
Мой код всегда был прав,оказывается, моя ошибка была в том, что я не мог прочитать "FFF"
и поместить ее в переменную a, b, c следующим образом
while (infile >> hex >> a >> b >> c)
{
cout << hex << a << b << c << "\n";
}
Может кто-нибудь помочь мне с этим?я должен отделить все значения HEX, которые я хочу прочитать с пробелом?потому что infile >> hex >> setw(1)
не работает ..