gpt4 book ai didi

c++ - ostream_iterator 到字符串而不是 cout?

转载 作者:行者123 更新时间:2023-11-27 23:08:30 25 4
gpt4 key购买 nike

有人刚刚帮助我使用 boost 从目录中获取文件名

    if (exists(p))    // does p actually exist?
{

if (is_directory(p)) // is p a directory?
{
copy(directory_iterator(p), directory_iterator(), // directory_iterator::value_type
ostream_iterator<directory_entry>(cout, "\n")); // is directory_entry, which is

}
}

但我希望它在一个字符串中而不是 cout

我怎样才能捕获该拷贝?

最佳答案

您可以将内容复制到 std::ostringstream 并使用 str() 检索缓冲区的拷贝:

std::ostringstream buf;

std::copy(directory_iterator(p), directory_iterator(),
std::ostream_iterator<directory_entry>(buf, "\n"));

std::string content(buf.str());

关于c++ - ostream_iterator 到字符串而不是 cout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21666654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com