【发布时间】:2018-12-24 01:38:03
【问题描述】:
我知道我可以从 c++ 程序调用 system("curl path-LJO") 来下载文件并将其保存在当前目录中,然后我可以使用 STL 将其保存到 std::string。但是有没有办法将它直接保存在 std::string 中?我知道 abot https://github.com/curl/curl 但我想知道: curl 命令中是否有任何说明符可以做到这一点?如果没有,解决这个问题的最佳方法是什么?
【问题讨论】:
-
libcurl 可以让你调用 curl 而不需要创建一个单独的进程,那么你就不用担心进程间通信了
-
您可以将子进程的输出重定向到管道并从中读取输出。但是,您如何做到这一点取决于平台。请参阅 POSIX 系统上的
popen或fork/exec和 Windows 上的CreateProcess。除了非常有限的system函数之外,C++ 标准库中没有任何子进程管理工具。