相关疑难解决方法(0)

将文件加载到向量<char>中

我想将文本文件的内容加载到vector<char>(或任何char输入迭代器中,如果可能的话).目前我的代码如下所示:

std::vector<char> vec;
std::ifstream file("test.txt");
assert(file.is_open());
while (!(file.eof() || file.fail())) {
    char buffer[100];
    file.read(buffer, 100);
    vec.insert(vec.end(), buffer, buffer + file.gcount());
}
Run Code Online (Sandbox Code Playgroud)

我不喜欢手动使用缓冲区(为什么100个字符?为什么不是200个,或者25个或者其他什么?),或者这个用了大量的行.代码看起来非常丑陋而且非C++.有更直接的方法吗?

c++ iostream

19
推荐指数
5
解决办法
2万
查看次数

标签 统计

c++ ×1

iostream ×1