Как сказано в заголовке, как вы читаете шестнадцатеричные значения с помощью 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)
не работает ..