我使用ifstream :: read来读取一个文件,
ifstream ifs("a.txt"); char buf[1024]; ifs.read(buf,1024);
但是a.txt的大小可能小于1000字节,那么我应该知道从ifs读取了多少个字节呢?
解决方法
您可以通过
std::ifstream::gcount
获得最后一次操作提取的字符量:
ifstream ifs("a.txt"); char buf[1024]; ifs.read(buf,1024); size_t extracted = ifs.gcount();
要么
ifstream ifs("a.txt"); char buf[1024]; size_t extracted = ifs.read(buf,1024).gcount();
自read(...)
返回*这个.