Я использую ifstream::read
для чтения файла,
ifstream ifs("a.txt");
char buf[1024];
ifs.read(buf, 1024);
Но размер файла .txt может быть меньше 1000 bytes
, так как же мне узнать, сколько байтов было прочитано из ifs
?
Я использую ifstream::read
для чтения файла,
ifstream ifs("a.txt");
char buf[1024];
ifs.read(buf, 1024);
Но размер файла .txt может быть меньше 1000 bytes
, так как же мне узнать, сколько байтов было прочитано из ifs
?
Вы можете получить количество символов, извлеченных последней операцией, с помощью std::ifstream::gcount
:
ifstream ifs("a.txt");
char buf[1024];
ifs.read(buf, 1024);
size_t extracted = ifs.gcount();
or
ifstream ifs("a.txt");
char buf[1024];
size_t extracted = ifs.read(buf, 1024).gcount();
поскольку read(...)
возвращает *this
.