我正在使用以下方法将文件内容读入字符串:
std::ifstream t("file.txt");
std::stringstream buffer;
buffer << t.rdbuf();
std::string data(buffer.str());
但是如何检查 I/O 错误并确保所有内容都已实际读取?
最佳答案
您可以像处理任何其他插入操作一样执行此操作:
if (buffer << t.rdbuf())
{
// succeeded
}
如果从 t.rdbuf()
中提取或插入到 buffer
失败,failbit
将在 buffer 上设置
。
关于c++ - 使用 "ifstream"、 "stringstream"和 "rdbuf()"将文件内容读取为字符串时如何检查 I/O 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7946317/